26 Jul
Posted by dirk.olbertz as Uncategorized
Gestern stand ich vor dem Problem, obige Relation in CakePHP zu realisieren. Mit hasMany und belongsTo geht das zwar grundsätzlich, die Tücke steckt aber im Detail: wenn man sich eine Gruppe lädt, holt CakePHP bei Bedarf auch alle User mit, die in diese Gruppe gehören. Wo aber soll der GroupMaster gespeichert werden, wenn User schon für die zur Gruppe zugehörigen User belegt ist?
Die Lösung sieht so aus:
class Group extends AppModel {
var $name = 'Group';
var $hasMany = array('User');
var $belongsTo = array (
'GroupMaster' => array (
'className' => 'User',
'foreignKey' => 'group_master'
)
);
}
Über die Relation hasMany werden die zur Gruppe gehörigen User automatisch geladen, der GroupMaster wird über die Relation belongsTo bestimmt.
RSS feed for comments on this post · TrackBack URI
Leave a reply