laravel使用外键

时间:2019-07-12 14:16:21

标签: mysql laravel-5 eloquent

我看不到这个 我有事件,用户,项目表

events
_______________________
id | name

users
______________________
id | name

items
_______________________
id | event_id  | user_id. | name

我要在删除事件或用户时删除项目

Schema::table('items', function(Blueprint $table) {
        $table->foreign('user_id')->references('id')->on('users');
    });
Schema::table('items', function(Blueprint $table) {
        $table->foreign('events_id')->references('id')->on('events');
    });

因此,如果在删除用户或事件时在两者上都添加-> onDelete('cascade'),该项目也会被删除吗?

1 个答案:

答案 0 :(得分:1)

  

因此,如果在用户或事件发生时都在两者上都添加-> onDelete('cascade')   删除的项目也会被删除吗?

是的。

当您从users表中删除一行时,items表中所有具有相同user_id的行都将被删除。

当您从events表中删除一行时,items表中所有具有相同event_id的行都将被删除。