为了账号安全,请及时绑定邮箱和手机立即绑定

Laravel 迁移 onDelete() 查询异常

Laravel 迁移 onDelete() 查询异常

PHP
30秒到达战场 2021-06-24 10:06:29
我有一个带有外键的简单 Laravel 迁移。public function up(){    Schema::create('smp_posts', function (Blueprint $table) {        $table->increments('id');        $table->integer('project_id')->unsigned();        // Some other stuff        $table->foreign('project_id')->references('id')->on('smp_projects')->onDelete('cascade');    });}当我运行 migrate 命令时php artisan migrate:refresh。我收到此错误:照亮\数据库\查询异常:SQLSTATE[2BP01]:依赖对象仍然存在:7错误:无法删除表 smp_projects 因为其他对象依赖它详细信息:表 smp_posts 上的约束 smp_posts_project_id_foreign 依赖于表 smp_projects通常应该删除所有孩子,因为我将其设置onDelete()为级联。正确的?怎么了?
查看完整描述

1 回答

?
繁花如伊

TA贡献2012条经验 获得超12个赞

cascade您设置的选项仅在您删除行时适用。如果您删除未触发约束的表,这就是您收到错误的原因。

您应该查看Postgres 文档的Dependency Tracking部分


查看完整回答
反对 回复 2021-06-25
  • 1 回答
  • 0 关注
  • 194 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信