Codeigniter Datamapper多对多关系

时间:2012-03-30 14:05:56

标签: php codeigniter codeigniter-2 codeigniter-datamapper

我正在使用DataMapper在我的模型中建立关系,但我已经碰壁了。

我有一个RealEstate类,一个Client类和一个Position类,它们都有很多关系。

  1. Client可以在Position
  2. 中拥有RealEstate'买方'
  3. 相同Client可以在另一个Position
  4. 中拥有RealEstate'卖家'

    因此,对于给定的RealEstate,很容易找到附加到它的所有Clients,但我怎样才能包含这些客户对特定Position的{​​{1}} RealEstate }?

1 个答案:

答案 0 :(得分:1)

我认为你的设计不正确。它应该是ClientPosition之间的多对多关系,但PositionRealEstate之间只有一对多关系,其中一< / {>在RealEstate方面。它有效地模拟了RealEstateClient之间的多对多关系,其中包含其他信息(Position)。

就问题域而言,任何角色(Position已附加到特定RealEstate,但任何Client都可以拥有任意数量的角色,任何RealEstate可以(?)附加多个角色。

我的指尖没有CodeIgniter 2,因此无法提供代码示例,但如果您确实需要它,请告诉我 - 我在家里有CodeIgniter 2.