我正在尝试添加jquery上传 但我需要将参数传递给我的表单
这里是表格
<%= form_for Photo.new do |f|%>
<%= f.label :title %><br />
<%= f.text_area :title, :rows => 3, :value => "Add a photo", :onclick=>"this.value='';" %>
<%= f.file_field :photo, multiple: true %>
<%= f.hidden_field('event_id', params[:event_id]) %>
<%= f.submit "Add Picture" %>
<% end %>
但这不起作用,问题是我有一个链接已经跟随 本地主机/事件/ 16 /照片/ useradd的
其中16是event_id参数。如何将它放入我的隐藏区域以便随后发送?
更新
NoMethodError in Photos#useradd
Showing /home/jean/rail/voix/app/views/photos/useradd.html.erb where line #13 raised:
undefined method `merge' for "16":String
错误和16是我的event_id
答案 0 :(得分:3)
好的,在黑暗中拍摄:
尝试
<%= f.hidden_field 'event_id', :value => params[:event_id] %>
编辑 - 工作原理:
hidden_field方法具有以下签名:hidden_field(object_name, method, options = {})
See the docs about hidden_field
您已将值16作为隐藏字段调用的方法传递,但这不起作用。
hidden_field的第三个参数是一个选项哈希。设置该散列的“value”字段将设置助手生成的输入标签的值,从而有效地将“16”设置为该表单字段的值。 :)
祝你好运