【发布时间】:2010-11-24 10:04:52
【问题描述】:
在我的一个观点中,我有一个可以将数据发送到控制器的表单。
<%= form_for @user do |f| %>
<%= f.error_messages %>
<% for committee in @committees %>
<div>
<%= check_box_tag "user[relevant_committee_ids][]", committee.id, @user.relevant_committees.include?(committee) %>
<%= committee.name %>
</div>
<% end %>
<%= f.submit t(:save_settings) %>
<% end %>
如果表单为空,则不会生成 params[:user],这将导致我的控制器中的以下代码失败:
@user.relevant_committee_ids = params[:user][:relevant_committee_ids] ||= []
带有错误信息:
当你没有时你有一个 nil 对象 期待它!你可能已经预料到了 数组的实例。发生错误 在评估 nil 时。[]
如果没有生成 params[:user],有什么好的、可读的方法来获取一个空数组?
提前感谢您的任何建议。
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3