且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

删除带有外键Laravel的列错误:常规错误:1025重命名错误

更新时间:2023-12-01 09:22:10

事实证明;当您创建像这样的外键时:

It turns out; when you create a foreign key like this:

$table->integer('pick_detail_id')->unsigned();
$table->foreign('pick_detail_id')->references('id')->on('pick_details');

Laravel唯一地命名外键引用,如下所示:

Laravel uniquely names the foreign key reference like this:

<table_name>_<foreign_table_name>_<column_name>_foreign
despatch_discrepancies_pick_detail_id_foreign (in my case)

因此,当您要删除带有外键引用的列时,必须这样做:

Therefore, when you want to drop a column with foreign key reference, you have to do it like this:

$table->dropForeign('despatch_discrepancies_pick_detail_id_foreign');
$table->dropColumn('pick_detail_id');

更新:

Laravel 4.2+引入了新的命名约定:

Update:

Laravel 4.2+ introduces a new naming convention:

<table_name>_<column_name>_foreign