如何在Ruby on Rails的form_for中使用hidden_​​field?

我已经读过了 ,但是我对RoR很陌生,所以我在理解它的时候有点麻烦。 我正在使用表单来创build一个新的请求logging,我需要发送的所有variables已经存在。 这里是我需要发送的数据(这是一个do循环):

:user_id => w[:requesteeID] :requesteeName => current_user.name :requesteeEmail => current_user.email :info => e 

这是我的表单,它到目前为止工作,但只发送一切NULL值:

 <% form_for(:request, :url => requests_path) do |f| %> <div class="actions"> <%= f.submit e %> </div> <% end %> 

我如何使用hidden_​​fields发送已有的数据? 谢谢阅读。

2 Solutions collect form web for “如何在Ruby on Rails的form_for中使用hidden_​​field?”

Ref hidden_​​field或hidden_​​field_tag

 <% form_for(:request, :url => requests_path) do |f| %> <div class="actions"> <%= f.hidden_field :some_column %> <%= hidden_field_tag 'selected', 'none' %> <%= f.submit e %> </div> <% end %> 

然后在控制器中

  params[:selected]="none" params[:request][:some_column] = request.some_column 

注意你什么时候用过

  <%= f.hidden_field :some_column %> 

它改变为HTML

 <input type="hidden" id="request_some_column" name="request[some_column]" value="#{@request.some_column}" /> 

当你使用

 <%= hidden_field_tag 'selected', 'none' %> 

它改变为HTML

  <input id="selected" name="selected" type="hidden" value="none"/> 

您可以发送一个自定义值作为模型的隐藏input:

 <%= f.hidden_field :version, value: 12 %> 
  • Ruby on Rails路线 - 获得和匹配的区别
  • Ruby'需要'错误:无法加载这样的文件
  • Rails模型,视图,控制器和助手:什么去哪里?
  • 地图和Ruby之间的区别?
  • “bin / rails:没有这样的文件或目录”在Heroku上有ruby2和Rails 4
  • 如何让Sinatra避免添加X-Frame-Options标题?
  • 如何从Rails的枚举中获取整数值?
  • 查看gem的源代码
  • 如何将一个parameter passing给array.map的快捷方式?
  • rails collection_select与select
  • Rails如何运行rake任务