sql >> Database >  >> RDS >> Mysql

CakePHP 3 - DB-tafelassociatie met zichzelf

Je moet verschillende aliassen gebruiken voor de 2 associatie.

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

Door deze $this->ForumCategories->find() geeft je de ouder en $this->ForumChilfCategories->find() de kinderen.

Anders - als dat een optie is - verander je databaseschema en gebruik je tree-gedrag.




  1. ORA-00955 vermijden:naam wordt al gebruikt door een bestaand object

  2. Records invoegen met automatisch oplopende primaire sleutels

  3. In MySQL:Hoe geef ik een tabelnaam door als opgeslagen procedure en/of functieargument?

  4. Intervalboom opslaan en opvragen in PostgreSQL