【发布时间】:2012-07-08 17:16:43
【问题描述】:
Cake 有自己的约定,可以在其模型和它们引用的表之间自动进行某些功能交互。如果外键引用名为 people 的表,则它们应称为 people_id。如何处理一行包含两个人并且需要两个人的外键的情况?很明显,我不能复制列名,有两个 people_id 列。
考虑一个有两个竞争对手的比赛。每个参赛者都由参赛者表格中的一行表示。比赛表需要参考这两个竞争对手。在不破坏 Cake 提供的自动功能的情况下,我怎样才能做到这一点?
【问题讨论】:
-
我不认为你可以有 2 个同名的列 -
people_id- 为什么你认为显然可以? -
By the looks of it ,用 ORM 做这件事有点不可能。 ActiveRecord 设计模式对此太有限了。地狱.. 恕我直言,制作简单的
JOIN声明甚至都不好,更不用说更复杂的情况了。基本上,您将不得不手动编写查询并检索数据。 -
我发现这个链接描述了这个过程是如何完成的:book.cakephp.org/1.2/view/851/…