laravel 我有表:categories & items表的外键为$category_id,如何删除一个类别并使f-key在items表中可为空?

ca1c2owp  于 2022-11-18  发布在  Go
关注(0)|答案(2)|浏览(130)

我不能删除类别,因为它是项目表中的外键。我该如何删除?我该如何在类别中进行删除并使项目表中的$category_id为空?
我尝试创建一个删除函数,但它发送了一个错误,说它不能,因为它是一个外键。

hgb9j2n6

hgb9j2n61#

创建一个迁移,以允许字段category_id具有空值,并在通过在外键上设置onDelete null删除引用的类别时默认为空

$table->foreignId('category_id')->nullable()->constrained()->onDelete('set null');

You can also read from here
公文

kwvwclae

kwvwclae2#

DB::statement('SET FOREIGN_KEY_CHECKS=0;');
// write your delete code here
DB::statement('SET FOREIGN_KEY_CHECKS=1;');

相关问题