#軟刪除 soft delete介紹

指的是不是真的從資料庫刪除,而是刪除後於資料庫標記

1.laravel有針對軟刪除功能,首先先建立一個migration,設定好softdelets後,執行migrate

php artisan make:migration add_soft_delete_to_cart_items

1629010725285.jpg

2.接著來到cartItems 這個model ,引入 use Illuminate\Database\Eloquent\SoftDeletes;

然後在class下在use SoftDeletes

1629011070538.jpg

3.接著修改cartItem controlloer delete

1629011504082.jpg

4.而如果想強制刪除,則改為forceDelete()

1629011764449.jpg

4.接著執行POSTMAN 試著刪掉第三筆

1629011537335.jpg

5.查看資料庫狀態,可以看到資料已經刪除且增加的刪除時間

1629011565019.jpg

<aside> 💡 soft delete只能透過model的形式, 而如果使用DB語法,只是去包SQL語法

</aside>

7.如果想撈出被軟刪除的資料利用withTrashed撈出

1629011905711.jpg