Terperinci di bawah ialah kaedah berbeza untuk memadam rekod daripada pangkalan data menggunakan Laravel Eloquent ORM. Ia menyediakan cara yang mudah dan cekap untuk memadam data.
1. Memadamkan satu rekod:
Kaedahdelete()
menggunakan:delete()
.
<code class="language-php">use App\Models\Post; // রেকর্ড খুঁজে বের করুন $post = Post::find(1); // রেকর্ড মুছে ফেলুন $post->delete();</code>
Ingat: Selepas pemadaman, rekod tidak akan berada dalam pangkalan data lagi.
2. Memadamkan berbilang rekod:
Menggunakan kaedahwhere
delete()
:Untuk memadamkan berbilang rekod, gunakan kaedah where
dengan klausa delete()
.
<code class="language-php">use App\Models\Post; // 'draft' স্ট্যাটাসের সকল রেকর্ড মুছে ফেলুন Post::where('status', 'draft')->delete();</code>
3. Menggunakan kaedah destroy()
:
destroy()
.
<code class="language-php">use App\Models\Post; // একক রেকর্ড মুছে ফেলুন Post::destroy(1); // একাধিক রেকর্ড মুছে ফেলুন Post::destroy([2, 3, 4]);</code>
Ingat: Kaedah destroy()
memadamkan rekod secara langsung menggunakan kunci utama.
4. Menggunakan acara model:
Acara Model dicetuskan apabila model Eloquent dipadamkan.
Acaradeleting
deleted
<code class="language-php">class Post extends Model { protected static function booted() { static::deleting(function ($post) { // মুছে ফেলার আগে করণীয় কাজ Log::info('Post is being deleted: ' . $post->id); }); static::deleted(function ($post) { // মুছে ফেলার পর করণীয় কাজ Log::info('Post deleted: ' . $post->id); }); } }</code>
5. Pemadaman Lembut:
Apakah padam lembut?.deleted_at
mesti ditambah pada model SoftDeletes
.
<code class="language-php">use App\Models\Post; // রেকর্ড খুঁজে বের করুন $post = Post::find(1); // রেকর্ড মুছে ফেলুন $post->delete();</code>
<code class="language-php">use App\Models\Post; // 'draft' স্ট্যাটাসের সকল রেকর্ড মুছে ফেলুন Post::where('status', 'draft')->delete();</code>
<code class="language-php">use App\Models\Post; // একক রেকর্ড মুছে ফেলুন Post::destroy(1); // একাধিক রেকর্ড মুছে ফেলুন Post::destroy([2, 3, 4]);</code>
<code class="language-php">class Post extends Model { protected static function booted() { static::deleting(function ($post) { // মুছে ফেলার আগে করণীয় কাজ Log::info('Post is being deleted: ' . $post->id); }); static::deleted(function ($post) { // মুছে ফেলার পর করণীয় কাজ Log::info('Post deleted: ' . $post->id); }); } }</code>
withTrashed()
: Mengembalikan rekod lembut yang dipadam dan tidak dipadam.onlyTrashed()
: akan memulihkan hanya rekod yang dipadam lembut.6. Pemadaman terus daripada pangkalan data:
Rekod boleh dipadamkan terus dengan pertanyaan SQL menggunakan fasad DB
Laravel.
<code class="language-php">use Illuminate\Database\Eloquent\SoftDeletes; class Post extends Model { use SoftDeletes; protected $dates = ['deleted_at']; }</code>
Atas ialah kandungan terperinci ORM Fasih Laravel dalam Model Pemadaman Bahagian Bangla). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!