0

我有一个包含很多字段的实体。

<cfscript>
component persistent="true" output="false" {
...
property name="placeholder"     default = 0;
property name="expired"         update=false    insert=false;
property name="admin"           default = 0;
property name="partner"         default = 0;

很久以后,但在同一个请求中。我要这样做

if (!arguments.Account.getPlaceholder() )   local.arRoles.append("account");
if (!arguments.Account.getExpired()     )   local.arRoles.append("event");
if (arguments.Account.getAdmin()        )   local.arRoles.append("admin");
if (arguments.Account.getPartner()      )   local.arRoles.append("partner");

我得到一个看起来像这样的错误

在此处输入图像描述

我做了一个对象的转储。看起来应该没问题

在此处输入图像描述

4

1 回答 1

1

过期不像其他字段。它由对数据库进行的计算提供支持。这就是为什么它是

 property name="expired"            update=false    insert=false;

此外

 Account = EntityLoadByPK("Accounts", arguments.id);

许多人没有预期。必须强制从 DB 读取

 Account = EntityLoadByPK("Accounts", arguments.id);
 EntityReload(Account);
于 2019-09-19T04:49:26.050 回答