Jak*_*ake 151 ruby forms ruby-on-rails hidden-field ruby-on-rails-3
我想在铁轨上做这样的事情
以下是我目前在rails中的内容:
<%= form_for @order do |f| %>
<%= f.hidden_field :service, "test" %>
<%= f.submit %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
但后来我得到了这个错误:
undefined method `merge' for "test":String
Run Code Online (Sandbox Code Playgroud)
如何在rails中的hidden_field中传递值?
apn*_*ing 415
你应该做:
<%= f.hidden_field :service, :value => "test" %>
Run Code Online (Sandbox Code Playgroud)
hidden_field 期望哈希作为第二个参数
use*_*447 55
您正在使用hidden_field而不是hidden_field_tag.因为您使用的是非_tag版本,所以假设您的控制器已经在支持表单的对象上设置了该属性的值.例如:
控制器:
def new
...
@order.service = "test"
...
end</pre>
Run Code Online (Sandbox Code Playgroud)
视图:
<%= form_for @order do |f| %>
<%= f.hidden_field :service %>
<%= f.submit %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
Tus*_*CSD 27
它在Ruby 1.9和rails 4中运行良好
<%= f.hidden_field :service, value: "test" %>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
80123 次 |
| 最近记录: |