Mysql
 sql >> Base de données >  >> RDS >> Mysql

CakePHP 3 - Association de la table DB avec elle-même

Vous devez utiliser des alias différents pour les 2 associations.

$this->belongsTo('ForumCategories', [
    'foreignKey' => 'forum_category_id'
]);
$this->hasMany('ForumChildCategories', [
    'className' => 'ForumCategories',
    'foreignKey' => 'forum_category_id'
]);

Par ce $this->ForumCategories->find() vous donnera le parent et $this->ForumChilfCategories->find() les enfants.

Sinon - si c'est l'option - changez le schéma de votre base de données et utilisez le comportement de l'arborescence.