Je le modèle suivantReliure par déclaration de variable dans la classe modèle ne fonctionne pas, mais l'appel d'une fonction de liaison ne fonctionne
class Comment extends AppModel {
var $useTable = "comments";
var $recursive = 1;
var $belongsTo = array(
'User' => array(
'className' => 'User',
'foreignKey' => 'userID'
)
);
function bindCommentsToUser() {
$this->bindModel(
array('belongsTo' => array(
'User' => array(
'className' => 'User',
'foreignKey' => 'userID'
)
)
)
);
}
La variable belongsTo en haut ne fait absolument rien, je ne peux pas l'obtenir à travail. Pour confirmer que la liaison existe, j'ai créé la fonction inférieure pour faire une liaison dynamique qui fonctionne parfaitement. Il semble n'y avoir aucune différence entre les deux. Y a-t-il une erreur que je commets ou y a-t-il un réglage à faire ailleurs?
Je suppose que Cake fait le underscore avec le userID dans un, mais pas l'autre. Si vous le pouvez, je vous recommande de respecter les conventions de cake - utilisez user_id plutôt que userID. Le gâteau fait des choses drôles avec la capitalisation parfois. –
Pouvez-vous inclure le code supplémentaire que vous avez utilisé pour vérifier qu'une variation fonctionne et que l'autre ne fonctionne pas? Comprendre le test appliqué peut aider à déterminer pourquoi le test échoue. –