Laravel / PHP从一个或多个相关类别中删除产品

时间:2016-05-07 07:03:47

标签: php mysql laravel

我在产品和类别之间存在多对多关系。

1)如果产品被删除,它与枢轴表的关系也会被删除。  我想从数据库中删除产品,以防它与任何其他类别无关。

2)如果类别被删除,其相关产品也将被删除。但不属于任何其他类别的人。 我如何实现这一目标。

2 个答案:

答案 0 :(得分:2)

您想使用detach()

$user->roles()->detach([1, 2, 3]);

on delete cascade

$table->foreign('user_id')
      ->references('id')->on('users')
      ->onDelete('cascade');

答案 1 :(得分:0)

对于第二个要求,您可以将ON DELETE CASCADE设置为您的子(产品)表,这样如果您从类别表中删除任何类别,相关产品将从产品表中删除。