J'ai une table familiers, une table mages et une table mages_familiars où je garde quel familier appartient à quel Mage.Cakephp Débutant Question sur le modèle
Comment puis-je modéliser ce tableau de références croisées?
Merci à l'avance
J'ai une table familiers, une table mages et une table mages_familiars où je garde quel familier appartient à quel Mage.Cakephp Débutant Question sur le modèle
Comment puis-je modéliser ce tableau de références croisées?
Merci à l'avance
Vous n'avez pas besoin de la table intermédiaire à moins qu'il est possible qu'un familier peut appartenir à plusieurs mages et peut avoir plusieurs mages familiers (une relation HABTM). Dans ce cas, la table doit avoir les champs id
(int), created
(date/heure), modified
(date/heure), mage_id
(int) et familiar_id
(int). En outre, la table doit être nommée familiars_mages
.
Si un familier peut appartenir à un seul mage, un familier belongsTo et un mage hasMany familiers. La table familiars doit avoir un champ mage_id
.
Si un familier ne peut appartenir qu'à un seul mage et qu'un mage ne peut en connaître qu'un seul, vous pouvez utiliser une relation hasOne. Dans ce cas, la table mages a un champ familiar_id
ou la table familiars a un champ mage_id
.
J'ai donc besoin d'une table de références croisées uniquement lorsqu'il y a une relation HABTM? – chchrist
Droite. Si vous lisez la documentation sur chacune des relations et qu'elles ne mentionnent pas de table de référence, vous n'en avez pas besoin. – JJJ
Merci tout est plus clair maintenant! :) – chchrist
Avez-vous lu le manuel? Il y a une [section entière] (http://book.cakephp.org/view/1039/Associations-Linking-Models-Together) consacrée à cela. Qu'avez-vous essayé? – Ross
Je ne peux pas trouver où il est dit sur les tables de références croisées – chchrist
C'est parce que vous n'en avez pas besoin. – JJJ