在自链接模型中,删除子节点,而删除父节点



我想删除所有子节点(子类别(,同时删除父类别(使用"依赖"=> true(。以下是简要说明我正在使用自链接模型。假设我有 2 张桌子

1. Categories
2. Products

其中类别是多级的。 这样我在"类别"表中有一列名为"parent_category_id"。我已经将我的模型自链接为波纹管,

$this->belongsTo('FileCategories', [
        'foreignKey' => 'parent_category_id',
        'className' => 'FileCategories',
        'joinType' => 'INNER',
        'dependent'=> true
    ]);

依赖的"true"在这个cenerio中不起作用,所以我做错了什么还是有另一种方法可以做到这一点。

您还应该添加 hasMany 关系,如下所示。

$this->hasMany('Parent', [
    'foreignKey' => 'parent_category_id',
    'className' => 'FileCategories',
    'joinType' => 'INNER',
    'dependent'=> true
]);

如果它不起作用,您可以尝试此选项('cascadeCallbacks' => true(。

$this->hasMany('Parent', [
    'foreignKey' => 'parent_category_id',
    'className' => 'FileCategories',
    'joinType' => 'INNER',
    'dependent'=> true,
    'cascadeCallbacks' => true
]);

最新更新