cakephp 3.x 级联删除不起作用

Pav*_*hra 3 cascading-deletes cakephp-3.0

我有 3 个表格名称文章、评论、地址。

articles -> fields(id,title,body)
comments -> fields(id,article_id,comment)
addresses-> fields(id,article_id,address)
Run Code Online (Sandbox Code Playgroud)

在我的文章控制器中,我一直保持dependent=>true 和cascadeCallbacks=>true。首先,我尝试使用依赖 => true,我可以工作,然后添加级联,但仍然无法正常工作。下面是我的代码。

    $this->hasMany('Comments', [
        'className' => 'Comments',
        'dependent' => true,
        'cascadeCallbacks' => true,
    ]);

    $this->hasOne('Addresses',[
        'dependent' => true,
        'cascadeCallbacks' => true,
    ]);
Run Code Online (Sandbox Code Playgroud)

但是在删除文章时,关联的记录不会被删除。

public function delete($id = null)
{
    $this->request->allowMethod(['post', 'delete']);
    $article = $this->Articles->get($id);
    if ($this->Articles->delete($article)) {
        $this->Flash->success(__('The article has been deleted.'));
    } else {
        $this->Flash->error(__('The article could not be deleted. Please, try again.'));
    }

    return $this->redirect(['action' => 'index']);
}
Run Code Online (Sandbox Code Playgroud)

请告诉我我犯了什么错误。或需要添加或更改任何代码????请帮助

aav*_*rug 5

尝试这个 : $this->hasMany('Comments', [ 'foreignKey' => 'article_id', 'dependent' => true, 'cascadeCallbacks' => true ]);