ColdFusion ORM Отношения - PullRequest
       6

ColdFusion ORM Отношения

5 голосов
/ 16 февраля 2011

До ORM, если бы я хотел отобразить комбинированный вывод нормализованной таблицы, я просто сделал бы быстрый CFQUERY, соединил таблицы в нужных мне полях и отобразил вывод. Я просто не могу обернуть голову, используя ORM.

Например, с этими двумя таблицами:

customers
(id,
 name,
 customerType)

customerTypes
(id,
Name)

Как создать единую сущность, которую можно загрузить, чтобы отобразить следующее, когда поле customerType в клиентам ссылается на идентификатор в customerTypes?

customers.id, customers.name, customerTypes.name

Все примеры отношений ORM, по которым я по какой-то причине прошел, не могут заставить меня понять, как это сделать. Кажется, это так просто, это убивает меня. Буду признателен за любую помощь, проливающую свет на это!

Ответы [ 2 ]

1 голос
/ 16 февраля 2011

Или в качестве альтернативы

<cfproperty name="type" type="string" column="Name" table="customerTypes" joincolumn="id"> 

см. Соединение карт в CFC

1 голос
/ 16 февраля 2011

Итак, в вашем Customers CFC вам понадобится что-то вроде этого:

<cfproperty name="customerType" type="CustomerTypes" fieldtype="many-to-one" cfc="CustomerTypes" fkcolumn="id" lazy="true" />

Тогда вы сможете сбросить экземпляр объекта Customers и увидеть, что он имеет customerTypeсвойство и, следовательно, вы можете написать что-то вроде этого:

<cfset cust = entityLoad("Customers", 1) />
<cfset type = cust.getCustomerType().getName() />

Надеюсь, что помогает!

...