Laravel:删除Eloquent聚合

时间:2014-10-16 18:34:13

标签: php laravel eloquent

我正在寻找一种销毁Eloquent聚合的策略,例如: “包含”其他模型的模型。

在Ruby on Rails的ActiveRecord中,有一个dependent: :destroy选项可以在定义关系时放置,这意味着如果删除order,然后order_lines也必须删除。

Laravel有类似的东西吗?或者除了在交易中手动清理和包装它之外的任何其他替代方案?

1 个答案:

答案 0 :(得分:1)

如果使用Laravel架构构建器,则应使用外键和外键添加,例如:

$table->foreign('entry_id')
    ->references('id')
    ->on('entries')
    ->onDelete('CASCADE');

您当然也可以使用例如phpMyAdmin。

使用此类构造时,如果在这种情况下,entries中的记录将被删除,则会自动从此表中记录entry_idid相同的entries正在删除的内容将被删除。

它不是触发器,因为触发器结构要复杂得多,它只是定义关系并告诉如果相关父记录将被删除该怎么做。