Ștergere Logică cu SoftDeletes în Eloquent în Laravel

eloquent Laravel 11.x / Eloquent Q&A / Distribuie cod

Păstrarea înregistrărilor șterse în baza de date prin popularea automată a coloanei deleted_at și restaurarea lor ulterioară.

Sintaxă
use SoftDeletes; / $model->delete(); / Post::withTrashed()->restore();

Pentru a preveni pierderea accidentală a datelor importante, Laravel oferă funcționalitatea de Soft Deleting. Când un model marcat cu trait-ul SoftDeletes este șters prin delete(), înregistrarea nu este eliminată fizic din tabela SQL, ci i se populează coloana deleted_at cu timestamp-ul curent.

Toate interogările obișnuite vor exclude automat înregistrările șterse logic. Pentru a le include sau restaura, se folosesc metodele withTrashed(), onlyTrashed() și restore().

Exemplu: Folosirea SoftDeletes și restaurarea unui cont
namespace App\Models;

use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;

class Customer extends Model
{
    use SoftDeletes; // Necesită coloana $table->softDeletes() în migrare
}

// Utilizare:
// $customer->delete(); // Setează deleted_at = NOW()
// Customer::all(); // Returnează doar clienții activi
// Customer::withTrashed()->find($id)->restore(); // Restaurează clientul șters!
// $customer->forceDelete(); // Ștergere fizică definitivă din baza de date

Comunitate & Schimb de cunoștințe

Întrebări & Exemple de Cod: Ștergere Logică cu SoftDeletes în Eloquent

Ai o nelămurire despre utilizarea comenzii Ștergere Logică cu SoftDeletes în Eloquent sau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!

💬

Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!

Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.

Comunitate Adaugă o întrebare sau distribuie un cod

Moderare & Siguranță:

Pentru a menține calitatea și securitatea informațiilor, fiecare întrebare sau fragment de cod/prompt este analizat (manual sau prin moderare asistată de AI) înainte de publicare.