我有一个桌上的魔法师,一个桌子法师和一个桌子mages_familiars,我保持哪个熟悉属于哪个法师。
如何为此交叉参考表建模?
提前致谢
答案 0 :(得分:3)
你不需要中间表,除非一个熟悉的人可能属于多个法师并且法师可能有多个魔法师(HABTM关系)。在这种情况下,表格应包含字段id
(int),created
(日期时间),modified
(日期时间),mage_id
(int)和familiar_id
( INT)。此外,该表应命名为familiars_mages
。
如果一个熟悉的人只能属于一个法师,那就是熟悉的belongsTo法师和法师hasMany魔法师。 familiars表应该有一个mage_id
字段。
如果一个熟悉的人只能属于一个法师,并且一个法师只能拥有一个法师,那么你可以使用hasOne关系。在这种情况下,mages表中有一个familiar_id
字段,或者familiars表中有一个mage_id
字段。