Codeigniter Datamapper отношения многие ко многим - PullRequest
0 голосов
/ 30 марта 2012

Я устанавливаю отношения в моих моделях, используя DataMapper, но я столкнулся со стеной.

У меня есть класс RealEstate, класс Client и класс Position, которые все имеютмного ко многим отношениям.

  1. Client может иметь Position 'покупателя' в RealEstate
  2. То же самое Client может иметь Position 'продавца' в другом RealEstate

Таким образом, для данного RealEstate легко найти все Clients привязанные к нему, но как я могу также включить, что Position имеют эти клиенты для конкретного RealEstate?

1 Ответ

1 голос
/ 30 марта 2012

Я думаю, что у вас неправильный дизайн для него. Это действительно должны быть отношения «многие ко многим» между Client и Position, но только отношения «один ко многим» между Position и RealEstate, с один на RealEstate стороне. Он эффективно имитирует отношения «многие ко многим» между RealEstate и Client, в которых есть дополнительная информация (Position).

Если говорить о проблемной области, любая роль (Position) привязана к конкретному RealEstate, но любая Client может иметь произвольное количество ролей, а любой RealEstate может (? ) к нему прикреплено несколько ролей.

У меня нет CodeIgniter 2 на кончиках пальцев, поэтому я не могу предоставить примеры кода, но дайте мне знать, если он вам действительно нужен - у меня он дома CodeIgniter 2.

...