【Laravel6】論理削除を実装する方法
ユーザー情報などをデータベースから削除する場合などに、物理削除ではなく、論理削除にしたい場合ってありますよね。
そんなときも、Laravelならすぐにできちゃいます。
論理削除用カラムの追加
[database/migrations/yyyy_mm_dd_000000_create_users_table.php]※一部抜粋
public function up()
{
Schema::create('users', function (Blueprint $table) {
// 省略
$table->softDeletes();
});
}
これで「delete_at」というカラムが作成されます。
モデルを修正
[app/User.php]※一部抜粋
use Illuminate\Database\Eloquent\SoftDeletes;
// 省略
class User extends Authenticatable implements MustVerifyEmail
{
// 省略
use SoftDeletes; // 追加
// 省略
これで、delete()を行うと「delete_at」カラムに日付が入力されて論理削除になります。
たったこれだけで論理削除のロジックが作れます。
ディスカッション
コメント一覧
まだ、コメントがありません