我在我看来有以下代码:
<%= form_for :command_selected, :method => "get", :url => {:action => "command_domain_selected"} do |f| %>
<%= f.submit "Make Deployment" %>
<%= f.radio_button :domain, '1dev-den' %> <%= label :domain, '1dev-den'%><br />
<%= f.radio_button :domain, '2dev-den' %> <%= label :domain, '2dev-den'%><br />
当我点击submit (make deployment)
按钮时,来自parameters
和submit button
的{{1}}会传递到上面radio button
中提到的操作。但是,如果我没有选择任何单选按钮并在提交时cilck,它会抛出(nil对象返回,你可能期望一个数组实例)错误。但是,我想在我的操作中测试参数是否为nil并重定向到其他视图。以下是我的行动代码
form_for
为什么即使我手头检查它也会抛出nil对象错误? 请帮忙
def command_domain_selected
if(params[:command_selected][:domain].nil?)
respond_to do |format|
format.html{redirect_to wrong_selection_path}
end
else
@command_selected = params[:commit]
@domain_selected = params[:command_selected][:domain]
end
end
答案 0 :(得分:0)
这是一个猜测,但可能是params[:command_selected]
是nil,你没有检查。