我对CakePHP和所有这些与联想有关的东西都很陌生。当我想要删除一个类别时,我也要删除链接到该类别的权限。这是我的桌子模型:
CategoriesTable.php
class CategoriesTable extends Table
{
public function initialize(array $config)
{
parent::initialize($config);
$this->belongsToMany('Competences');
}
}CompetencesTable.php
class CompetencesTable extends Table
{
public function initialize(array $config)
{
parent::initialize($config);
$this->belongsToMany('Categories');
$this->belongsToMany('CategoriesCompetences');
}
}CategoriesCompetencesTable.php
class CategoriesCompetencesTable extends Table
{
public function initialize(array $config)
{
parent::initialize($config);
$this->belongsTo('Categories');
$this->hasMany('Competences');
}
}当我删除一个类别时,它会删除链接表中的行,但不会删除CompetenceTable中的权限。我知道我忘记了一些东西,但我想不出是什么。
发布于 2017-01-18 00:09:34
我不知道为什么您的join表中有一个hasMany assoc。有理由吗?应该是belongsTo。如果没有,请尝试在关联选项dependent => true中设置hasMany assoc。
请参阅hasMany()的文档。仔细阅读整页是个好主意。
public function initialize(array $config)
{
$this->hasMany('Competences', [
'foreignKey' => 'article_id',
'dependent' => true,
]);
}https://stackoverflow.com/questions/41703741
复制相似问题