【问题标题】:how to pass params to action#new (in a nested has_many association) via link_to如何通过 link_to 将参数传递给 action#new(在嵌套的 has_many 关联中)
【发布时间】:2015-05-25 18:39:41
【问题描述】:

我有一个影院系统,您可以在其中选择一个时段并为此购买门票 所以我有一个link_to:

<td><%= link_to 'Buy', new_offer_path(:session_id => session.id) %></td>

我有一个名为 offer 的模型和一个模型票,当用户按下 Buy 时,它会生成一个 Offer。此优惠有一个嵌套的票证,我需要的信息是 session_ID 以在优惠中创建票证 ID。

这是我的报价控制器#new 操作:

def new
    @offer = Offer.new
    @offer.ticket = params[:session_id]

    respond_with(@offer)
end

但它不起作用,我需要通过链接传递的参数来填写报价中的票证字段,我该怎么做?

其他可能有用的

报价型号

class Offer < ActiveRecord::Base
     belongs_to :ticket
end

门票型号

class Ticket < ActiveRecord::Base
  belongs_to :session
  belongs_to :seat

  has_many :offers
end

【问题讨论】:

    标签: ruby-on-rails forms ruby-on-rails-4 nested-attributes link-to


    【解决方案1】:

    在您的表单中添加以下内容:

    <%= f.hidden_field :session_id, :value => params[:session_id] %>
    

    这样session_id 会一直持续到create 操作。

    【讨论】:

    • Thxx,我认为这会起作用,我现在无法测试,但是,当我测试时,我会告诉并接受这个答案
    猜你喜欢
    • 2013-03-16
    • 2017-02-09
    • 1970-01-01
    • 2014-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多