在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>
这似乎工作正常,但我没有找到它记录。它似乎应该被允许,因为没有歧义,这与其他语言一致。
答案 0 :(得分:1)
AFAIK可以直接引用变量,只要它们不是延迟加载的。您的ORMExecuteQuery()
应使用:named
或?
位置绑定值。