我曾经在Yii工作,现在我正在Yii2上建立一个新项目。
在Yii上有函数beforeDelete()和afterDelete(),它允许我在那里添加代码并从连接表等中删除相关的行。
我的问题是:在Yii2上,是否有另一种方法可以通过事件或数据库实现这一点(在索引上的删除事件上)?什么被认为是这些程序的良好做法?
谢谢!
答案 0 :(得分:1)
通常使用外键和级联删除处理。在这种情况下,您不必在删除事件处理程序中编写任何其他代码。
但是,对于更复杂的情况,您可以使用相同的ActiveRecord事件处理程序beforeDelete()
和afterDelete()
。删除主模型后,最好删除afterDelete()
事件中的相关记录。
官方文档: