Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 无法在Ruby on Rails中将params[:fields]散列传递给控制器方法_Ruby On Rails_Ruby On Rails 3_Forms_Routes_Params - Fatal编程技术网

Ruby on rails 无法在Ruby on Rails中将params[:fields]散列传递给控制器方法

Ruby on rails 无法在Ruby on Rails中将params[:fields]散列传递给控制器方法,ruby-on-rails,ruby-on-rails-3,forms,routes,params,Ruby On Rails,Ruby On Rails 3,Forms,Routes,Params,我的表格是这样的 routes.rb ----------- resources :mail_settings the _form.html.erb --------- “btn大型btn成功”%> 但是我可以访问像params[:name]这样的单个参数,没有任何问题,为什么在我尝试params[:mail\u setting]时它不工作?你的意思是为什么它是params[:name]而不是params[:mail\u setting][:name]?如果是这样,原因是您使用的是表单标记

我的表格是这样的

 routes.rb
-----------
resources :mail_settings
the _form.html.erb
---------
“btn大型btn成功”%>

但是我可以访问像params[:name]这样的单个参数,没有任何问题,为什么在我尝试params[:mail\u setting]时它不工作?

你的意思是为什么它是
params[:name]
而不是
params[:mail\u setting][:name]
?如果是这样,原因是您使用的是
表单标记
,而不仅仅是
表单
,以及*u标记帮助程序家族[即文本字段标记]。在这种情况下,您不需要将表单“绑定”到模型-通常,表单标签比表单灵活得多。但是,您应该能够执行以下操作

the _form.html.erb
---------
<%= form_tag  '/mail_settings' do %>



<div class="fieldBlock">
 <%= label_tag :name %>  <%= text_field_tag :name%> </div>

<div class="fieldBlock">
 <%= label_tag :id%>  <%= text_field_tag :id%> </div>


<div class="actions fieldBlock">
 <%= submit_tag "Update Settings ", :class => "btn-large btn-success" %>
</div>


<% end %>

您将获得params[:mail_setting][:name]

希望我猜到你在问什么

<%= text_field_tag "mail_setting[name]"%>