【问题标题】:Multiple foreign keys to the same table in Cake PHP?Cake PHP中同一个表的多个外键?
【发布时间】: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/…

标签: php sql cakephp orm


【解决方案1】:

我找到了一个链接,描述了如何完美地做到这一点。

http://book.cakephp.org/2.0/en/models/associations-linking-models-together.html#hasandbelongstomany-habtm

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-10-27
    • 1970-01-01
    • 1970-01-01
    • 2017-01-09
    • 2020-07-24
    • 1970-01-01
    • 2019-02-18
    相关资源
    最近更新 更多