是否需要在ORM组件中使用getter函数?

时间:2015-02-13 00:19:52

标签: coldfusion

在ORM函数中使用内部ORM属性时,是否必须使用getter函数?例如,在下面的示例中,我使用#person_id#而不是this.getperson_id()。

<cfcomponent persistent="true" table="people" schema="dbo" output="false">
<cfproperty name="person_id" column="person_id" type="numeric" ormtype="int"fieldtype="id"/>

<cffunction name= "hasGifts" returntype="boolean">
<cfset gift_count = ORMExecuteQuery("SELECT COUNT(g.gift_id) FROM gifts g INNER JOIN g.people p WHERE p.person_id = '#person_id#', True )>
<cfif gift_count eq 0>
    <cfreturn false>
<cfelse>
    <cfreturn true>
</cfif>
</cffunction>

这似乎工作正常,但我没有找到它记录。它似乎应该被允许,因为没有歧义,这与其他语言一致。

1 个答案:

答案 0 :(得分:1)

AFAIK可以直接引用变量,只要它们不是延迟加载的。您的ORMExecuteQuery()应使用:named?位置绑定值。