Deleting Data

 Delete Related Table Menggunakan Laravel Model Event

1. Buka file app/Models/BlogPost.php dan tambahkan code dibawah ini. Line 21 - 32.


Delete Related Table Menggunakan Database Cascading

1. Cara lain untuk meng-handle masalah tersebut adalah dengan menggunakan cascade pada database level. 

2. Buat migration baru php artisan make:migration AddCascadeDeleteToCommentsTable 

3. Buka file database/migrations/xxxx_xx_xx_xxxxxx_add_cascade_delete_to_comments_tabl e.php dan ubah menjadi menjadi seperti ini. Line 9 - 38. 

4. Jalan migration php artisan migrate

5. Buka file app/Models/BlogPost.php dan tambahkan code dibawah ini. Line 29 - 31.


Model Soft Deleting

1. Buat migration baru php artisan make:migration AddSoftDeleteToBlogPostsTable

2. Buka file database/migrations/xxxx_xx_xx_xxxxxx_add_soft_delete_to_blog_posts_table.p hp dan ubah menjadi menjadi seperti ini. Line 17 dan 29

3. Jalan migration php artisan migrate

4. Buka file app/Models/BlogPost.php dan tambahkan code dibawah ini. Line 7 - dan 11.

Query Soft Deleted Rows 

1. Silahkan masuk ke tinker php artisan tinker

2. menggunakan method all()

$posts = BlogPost::all();

3. menggunakan method pluck().

$posts = BlogPost::all()->pluck('id');


4. menggunakan method withTrashed(). $posts = BlogPost::withTrashed()->pluck('id');

5. menggunakan method onlyTrashed(). $posts = BlogPost::onlyTrashed()->pluck('id');

Restore Soft Deleted Rows

1. Masuk ke tinker 

2. Cari salah satu BlogPost yang sudah di delete, kemudian di restore. 

a. Cari BlogPost → $post = BlogPost::onlyTrashed()->get()->first(); 

b. Cek apakah trashed: → $post->trashed(); → harusnya true 

c. Restore BlogPost → $post->restore(); 

d. Cek apakah trashed: → $post->trashed(); → harusnya false
 

Soft Deleted dan Restoring Relation Model

1.Buat migration baru php artisan make:migration AddSoftDeleteToCommentsTable

2. Buka file database/migrations/xxxx_xx_xx_xxxxxx_add_soft_delete_to_comments_table.ph p dan ubah menjadi menjadi seperti ini. Line 17 dan 29.


3. Jalan migration php artisan migrate

4. Buka file app/Models/Comment.php dan tambahkan code dibawah ini. Line 7 - dan 11


5. Buka file app/Models/BlogPost.php dan tambahkan code dibawah ini. Line 32 - 39.


6. Masuk ke tinker
7. Cari satu BlogPost yang memiliki comments. 
a. Cari BlogPost → $post = BlogPost::has('comments')->get()->first(); 
b. Delete BlogPost → $post->delete(); 
c. Check apakah sudah deleted → $post->trashed();

Comments

Popular posts from this blog

Konsep estetika gambar pada desain

Cloud Infrastructure Mechanism