【问题标题】:Sending data in my form hidden field在我的表单隐藏字段中发送数据
【发布时间】:2012-10-03 02:26:02
【问题描述】:

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

但这不起作用,问题是我有一个链接跟随 localhost/events/16/photos/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

【问题讨论】:

  • 究竟是什么不起作用?您是否检查过 html 以查看隐藏字段是否存在?尝试在您的创建操作上放置一个调试器,看看会发生什么
  • 在这里查看类似查询stackoverflow.com/questions/3131982/…

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


【解决方案1】:

好的,这里在黑暗中拍摄:

试试

<%= 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 调用的方法传递,但这是行不通的。

hidden_​​field 的第三个参数是一个选项哈希。设置该哈希的“值”字段将设置助手生成的输入标签的值,从而有效地将“16”设置为该表单字段的值。 :)

最好的问候

【讨论】:

  • 谢谢你,我想这对我有很大帮助
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-08-28
  • 2019-08-31
  • 2017-05-22
  • 2019-01-02
  • 2012-03-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多