在我的表单隐藏字段中发送数据

时间:2012-10-03 02:26:03

标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-3.1

我正在尝试添加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

1 个答案:

答案 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”设置为该表单字段的值。 :)

祝你好运