Rails collection_select在部署但未在开发中时引发错误。为什么?

时间:2011-12-08 10:51:02

标签: ruby-on-rails heroku

我正在向Heroku部署一个新的Rails应用程序。这是我第一次将Rails 3.1与Heroku的Cedar服务器一起使用。我从来没有在部署应用程序时遇到太多麻烦!

首先是Ruby版本问题,然后是资产预编译错误,然后是gem和Procfile问题!

现在,我应用中的所有选择表单字段似乎都会产生错误。该应用程序在本地主机上完美运行,我无法解决问题所在。

尾巴摘录:

2011-12-08T10:35:00+00:00 app[web.1]: ActionView::Template::Error (/app/app/views/gears/_panel_dataentry.html.erb:23: syntax error, unexpected ',', expecting ')'
2011-12-08T10:35:00+00:00 app[web.1]: ...nd= ( collection_select (:gear, :gear_category_id, GearCateg...
2011-12-08T10:35:00+00:00 app[web.1]: ...                               ^
2011-12-08T10:35:00+00:00 app[web.1]: /app/app/views/gears/_panel_dataentry.html.erb:23: syntax error, unexpected ',', expecting tCOLON2 or '[' or '.'
2011-12-08T10:35:00+00:00 app[web.1]: ..._id, GearCategory.default, :id, :name, :prompt => 'Please se...
2011-12-08T10:35:00+00:00 app[web.1]: ...                               ^
2011-12-08T10:35:00+00:00 app[web.1]: /app/app/views/gears/_panel_dataentry.html.erb:23: syntax error, unexpected ')', expecting keyword_end
2011-12-08T10:35:00+00:00 app[web.1]: ...rompt => 'Please select...' ) );@output_buffer.safe_concat('...
2011-12-08T10:35:00+00:00 app[web.1]:     24:           </tr>
2011-12-08T10:35:00+00:00 app[web.1]:     25:           <tr>

应用中的每个选择字段都会发生此类错误。

底层代码如下:

<th><%= f.label :gear_category, "Category" %></th>
<td><%= collection_select (:gear, :gear_category_id, GearCategory.default, :id, :name, :prompt => 'Please select...' ) %></td>

在最新版本的Rails中是否更改了此语法?还有其他人遇到过这个问题吗?我很感激任何指点或想法!

1 个答案:

答案 0 :(得分:3)

删除collection_select(之间的空格。