如何将物品从另一种形式的红宝石放在铁轨上

时间:2013-09-30 12:15:03

标签: ruby-on-rails

我有2个表单,我想在我的一个表单中创建check_box_tag,如果我检查了相同的项目,这个项目在hiden字段标记中放入另一个表单,当我保存我的另一个表单值时,此项目保存在我的数据库中。

我认为

<% for item in @items %>
  <%= check_box_tag "items[#{item.id}]", item.id, :name => "items[]" %>    
<% end %>

<% form_for(@feedback ) do |f| %>

<%= f.hidden_field :item_value %> #this is field in which I want put from one form

<%= f.label :name, "Name" %></td>
<%= f.text_field :name, :style => "width:100%" %>

<%= f.label :phone, "Phone" %>
<%= f.text_field :phone, :style => "width:100%" %>

<%= f.label :email, "Email" %>
<%= f.text_field :email, :style => "width:100%" %>

<%= f.submit "Submit" %>

<% end %>

在我的控制器中

...
@item = Item.find(:all)
@feedback = Feedback.new(params[:feedback])

email = ApplicationMailer.create_feedback_rez(@feedback)
email.set_content_type("text/html; charset=utf-8")
ApplicationMailer.deliver(email)

@feedback.save
...

我该怎么做?

感谢您的建议!

2 个答案:

答案 0 :(得分:0)

在我看来,好像你会从建立数据库关系中受益更多。如何创建反馈has_many项目的关系呢?然后你可以保持你的表单与它们的方式分开,让你的复选框表单在items表中保存数据库记录,并通过它的ID将它链接到反馈表?根据您为什么要使用隐藏标记开始,如果您这样做,您甚至可能不需要。如果这不是你想要的,那么更多细节 - 你想要完成什么?你的代码做了什么?

答案 1 :(得分:0)

您所谈论的内容称为嵌套表单以下是与他们合作的良好链接http://createdbypete.com/articles/working-with-nested-forms-and-a-many-to-many-association-in-rails-4/