在Rails中单击按钮时传递参数

现在,我有它,以便当用户从collection_select选择一个选项时,将根据他们选择的event_id填充div。 根据Event ,将显示多个EventOption ,每个EventOption都有自己独特的ID。 (我将EventOption作为belongs_to Event ,每个Event都有很多。)

这是我在选择Event时通过JS / Ajax填充的内容:

 

Available Options for "":

Name:

Description:

Price:

"button", :id => "available-dates-button" %>
@event.id), :id => "book-now-button", :class => "button" %>

我的问题是,当他们点击Book This Event Now!时,我可以传递event_id Book This Event Now! ,但那不是我需要的。 我需要特定的:id要传递的:event_option :id ,我不知道如何从迭代中获取它。 .each我都来自它。

如何确保我的book_now_path的按钮的每次迭代都有一个可用于完成预订的唯一ID?

只需将event_option.id添加到book_now_path助手即可。

 book_now_path(:event => @event.id, :event_option_id => e.id) 

然后在控制器动作中它将在参数中:

 @event_option_id = params[:event_option_id] 

您可以将任何其他参数添加到Rails路由助手,只需将其名称和值作为键和值添加到助手方法的选项中即可。