【发布时间】:2011-10-04 01:21:36
【问题描述】:
有没有办法让 isDevMode、devModeToEmailAddress、devModeFromEmailAddress 成为私有属性?
代码:
/**
* email
* @accessors true
*/
component email output="false" hint="This is email object." {
/* properties */
property name="toEmailAddress" type="string";
property name="fromEmailAddress" type="string";
property name="subject" type="string";
property name="body" type="string";
property name="attachments" type="array";
/*
private isDevMode
private devModeToEmailAddress
private devModeFromEmailAddress
*/
}
【问题讨论】:
-
你的意图是什么?属性(除其他外)在 CF 中定义访问器,这意味着它们应该可供访问(因此,不是私有的)。您是否试图在 ORM 中强制执行到私有变量的关系映射?或者,您是否“只想要一些私有变量”——如果是后者,您需要将它们设置在“变量”范围内。
-
我没有使用 ORM 我只是想要只能在对象内部而不是对象外部设置的属性。这样,如果网站处于开发模式,电子邮件不会发送给客户,但在生产时它们工作得很好。
-
下面丹的答案是你想要的。
标签: oop coldfusion coldfusion-9