Увійти Реєстрація
Блог Серії
Кар'єра
Вакансії Компанії
Навчання
Документація Співбесіди Тестування Відео
Екосистема
Пакети Ресурси Проєкти
Інше
Події Про нас

Tips & Tricks: статті за тегом «Захист даних»

Статті, новини, туторіали та переклади від учасників спільноти

No results.
Tips 17 липня 2026

Soft Deletes - ніколи не втрачайте дані

Користувач випадково видалив свій акаунт. Відновити не можна. Негатив забезпечено.

Soft Deletes позначають запис як видалений, але фактично не прибирають його з бази.

Як працює:

Додаємо поле deleted_at, а Laravel автоматично приховує такі записи.

Корисні методи:

  • forceDelete() - повне видалення
  • withTrashed() - включити видалені
  • onlyTrashed() - лише видалені
  • restore() - відновити

Порада: Сумісно з GDPR: можна відновити за 30 днів, а потім зробити force delete.

// Міграція
Schema::table('users', function (Blueprint $table) {
  $table->softDeletes();
});

// Модель
use Illuminate\Database\Eloquent\SoftDeletes;

class User extends Model
{
  use SoftDeletes;
}

// Використання
$user->delete(); // Soft delete
$user->forceDelete(); // Повне видалення

// Запити
User::all(); // Тільки активні
User::withTrashed()->get(); // Включно з видаленими
User::onlyTrashed()->get(); // Лише видалені

// Відновлення
$user = User::withTrashed()->find(1);
$user->restore();

// Перевірка
if ($user->trashed()) {
  // Користувач видалений
}