【问题标题】:invalid assignment left-hand side (Not hyphenated variable name)左侧赋值无效(没有连字符的变量名)
【发布时间】:2014-12-31 10:24:22
【问题描述】:

我在 Railo 上安装了全新的 CFWheels,第一次尝试启动模型时,我在执行该操作的行上收到此错误 invalid assignment left-hand side。我的代码如下:

<cfset newUser = model('User').new() />

我的数据库中有一个用户表,我尝试从模型目录中添加/删除 User.cfc(只是为了看看是否发生了什么事)。我已经摆弄设置等,我总是得到错误。我可以通过执行以下操作手动对表运行查询:

<cfquery name="test" datasource="app"> SELECT * FROM Users</cfquery>

我得到了预期的结果。所以我知道我的数据库连接很好,我的 Wheels 约定应该自动选择正确的表,(我的意思是我没有得到未找到轮子表的错误)所以我怀疑 Railo 出了点问题。 (我习惯在 CF 而不是 Railo 工作)。

对可能发生的事情的想法?我已经阅读了一些关于 NULL Support 选项和 Railo 中的错误的内容,但我认为这不应该导致这种情况。 (NULL Support 设置为“完全支持”)

可以在以下位置查看跟踪:http://app.snapbought.com/user/create我的模型声明在 User.cfc 控制器的第 9 行。

【问题讨论】:

  • 我不知道 CFWheels 是否支持 Railo 中的完全 null 支持,但值得检查。您能否发布错误的实际堆栈跟踪。您可能弄错了发生错误的实际代码行。
  • 如前所述,它设置为完全支持。痕迹非常长,但如果你愿意,我可以。我可以在标签上下文数组中查看第一个非默认轮子代码,那里是我调用模型的行。此外,如果我将 newUser 设置为随机字符串或数字,错误就会消失。你还想看痕迹吗?
  • issues.jboss.org/browse/RAILO-2194 显然设置 Railo 以完成支持中断 null = x 类型变量关联和 cfwheels 有很多。
  • 啊,我明白了。 CFWheels 实际上是使用 named "null" 的变量。是的,由于“null”成为关键字,因此这不适用于完全的 null 支持。当我之前提到您应该“检查”时,我的意思是您应该检查 CFWheels 的文档以查看它是否受支持。既然我们知道,现在还没有实际意义。

标签: variable-assignment railo cfwheels


【解决方案1】:

根据问题中的 cmets,CFWHeels 框架中的代码当前与 Railo 的“完全 null 支持”选项不兼容。关闭它以使用 CFWheels。

【讨论】:

  • 因此,“完全空支持”似乎会让更多的事情发挥作用而不是更少。我想我的问题是,这是否意味着 CF 没有完全的 null 支持。为什么Railo 会偏离CF 正在做的事情?它们都是 cfml 语言,我认为 Railo 会尽可能地模仿 CF。此外,我无法更改该设置,因为它是服务器管理设置而不是 Web 管理设置,而且这是共享服务器。
  • 不,Adobe ColdFusion 从未完全支持 null。 CF9 中的 Hibernate 支持引入了部分支持。这就是 Railo 管理员在“部分支持”旁边说“CFML 默认”的原因。 Railo 偏离了方向,因为他们觉得它更好,这就是为什么他们为它设计了一面旗帜。 Railo 对复制 Adob​​e CF 的兴趣可能也没有您想象的那么大。我很惊讶您的服务器管理员会在共享服务器上启用该设置。许多现有代码与它不兼容。我会要求他们重新考虑。注意,这里没有 Application.cfc 设置,因为它是编译时的。
  • 我已经发送了请求,他说可以,只要它不破坏其他人的东西。
猜你喜欢
  • 2017-04-26
  • 1970-01-01
  • 1970-01-01
  • 2012-06-29
  • 2016-08-20
  • 2016-06-16
  • 2018-10-08
  • 2016-11-24
相关资源
最近更新 更多