在控制器中将行拆分为多行时,Rails 3语法错误在开发中

gug*_*son 1 ruby deployment passenger ruby-on-rails-3

当我在我的本地文件上开发我的项目时,我在代码中使用了这行正常工作:

@json = Location.qty_of_deliv_from(params[:from_rc])
  .qty_of_deliv_to(params[:to_rc])
Run Code Online (Sandbox Code Playgroud)

当我与乘客进行deployd时,我在这一行上遇到语法错误,如果我在同一行中包含所有代码,那么就会失败:

@json = Location.qty_of_deliv_from(params[:from_rc]).qty_of_deliv_to(params[:to_rc])
Run Code Online (Sandbox Code Playgroud)

这是一个已知的问题?

num*_*407 9

也许你的服务器的ruby版本不同,解析方式不同?

无论如何,在Ruby中,在编写多行代码时,您通常希望确保要包装的行在语法上是不完整的,以免混淆解析器,例如使用挂点.

Location.qty_of_deliv_from(params[:form_rc]).
  qty_of_deliv_to(params[:to_rc])
Run Code Online (Sandbox Code Playgroud)

或者您可以使用反斜杠来转义新行:

Location.qty_of_deliv_from(params[:form_rc]) \
  .qty_of_deliv_to(params[:to_rc])
Run Code Online (Sandbox Code Playgroud)