Laravel Softdelete

Laravel softdeleteの振る舞い

Laravel Softdelete

model に追加

namespace App;

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

class User extends Model
{
    use SoftDeletes;
}

Softdelete されているか

if ($user->trashed()) {
    // softdelete されている
}

Softdelete されているデータも含めて取得

$users = App\User::withTrashed()->get();

Softdelete されているデータのみ取得

$users = App\User::onlyTrashed()->get();

Softdelete を復元

$user->restore();

物理削除

$user->forceDelete();

おっさんWEBエンジニア奮闘記©2007 WEBDIMENSION