Je travaille sur une application immobilière, où une maison peut être répertoriée par un ou deux agents immobiliers. En tant que tel, j'essaie de suivre l'exemple donné dans la section 3.7.6.7 du livre de recettes de gâteau. Voici ce qui se passe dans mon modèle Realtors:Cakephp Plusieurs relations avec le même modèle
class Realtor extends AppModel {
var $primaryKey = $num;
var $name = 'Realtor';
var $hasMany = array('Homes' =>
array('className' => 'Home',
'foreignKey' => 'realtor_num',
...),
'CoListedHomes' =>
array('className' => 'Home',
'foreignKey' => 'realtor2_num',
...)
);
Cela rompt complètement l'application, avec le message d'erreur « table de base de données pour co_listed_homes CoListedHomes modèle n'a pas été trouvé. » En référence au livre de recettes 3.7.6.7, deuxième exemple, il semble clair qu'ils ne devraient pas avoir ou avoir besoin de tables séparées "messages_received" et "messages_sent" dans leur base de données, alors qu'est-ce que je fais mal ? ETA: bizarrement (pour moi) Je pense avoir mis les relations en marche en inversant l'ordre des tableaux: le premier tableau, sur foreignKey = realtor2_num, s'appelle 'ListedHomes', le second tableau, sur foreignKey = realtor_num s'appelle 'Home'. Je suppose que ma question est alors, pourquoi l'ordre devrait-il avoir de l'importance, et pourquoi Cake aurait-il commencé à parler de tables de bases de données non fondées dans certaines circonstances?
Je suppose que j'ai mal indiqué le problème ou que je n'ai pas fourni suffisamment d'informations. Je vais marquer cela comme une réponse correcte, car une meilleure conception de la table en premier lieu me sauverait sûrement de ce type de problème! – thesunneversets