Rails link_to将param传递给popup

时间:2016-02-27 14:46:14

标签: ruby-on-rails forms parameters

我计划在餐厅添加许多用餐者,但是我要求将所选餐厅的ID传递给新用餐者的形式(我希望在弹出窗口中有这种形式)。

如何在将餐厅存放到餐馆时如何制作新餐厅?

我可以使用

将current_user存储到控制器中的用餐者
@diner.user = current_user

但是我也希望将特定的餐厅也存放在餐馆中

@diner.restaurant_id = params[:restaurant_id]

我在餐厅的展示页面上有link_to

<%= link_to 'New Diner', new_diner_path, class: 'btn btn-primary' %>

我不确定如何将餐厅的ID传递给link_to,以便以下面的用餐形式使用它。

请注意:单个用户可以拥有许多餐馆,我将用户ID存储在餐馆餐桌中,这样我不仅知道哪个用户添加了餐馆,还知道用餐者属于哪个餐厅,因为用户可能拥有多个餐馆。一家餐馆,但希望看到所有餐馆的所有用餐者,这就是我将用户ID存储在餐馆餐桌中的原因。

2 个答案:

答案 0 :(得分:1)

永远不要用

修复它
    <%= link_to 'New Diner', 
new_diner_path(:restaurant_id => @restaurant.id), 
:class => 'btn btn-primary'  %>

答案 1 :(得分:1)

尝试更改

<%= link_to 'New Diner', new_diner_path, class: 'btn btn-primary' %>

<%= link_to 'New Diner', new_diner_path(restaurant_id: @restaurant.id), class: 'btn btn-primary' %>

然后你应该在下一个行动中使用params [:restaurant_id]