这是我的相关模型:
class ListItem < ActiveRecord::Base
belongs_to :inventory_item
belongs_to :shopping_list
belongs_to :item
end
class ShoppingList < ActiveRecord::Base
has_many :list_items
belongs_to :user, :foreign_key => :user_id
end
class InventoryItem < ActiveRecord::Base
belongs_to :item, :foreign_key => :item_id
belongs_to :vendor
has_many :list_items
end
我想要一个按钮来创建ListItems
属于他们拥有的用户指定列表。新的ListItem
也需要通过各自的:item_id
and :inventory_item_id
。这是我当前观点的相关部分:
<tr>
<% item.inventory_items.each do |product| %>
<td><%= button_to "#{product.price}",
{:controller => :list_items,
:action => 'create',
:id => #what goes here??,
:method => :create %></td>
<% end %>
</tr>
而我的 ListItems 控制器创建方法:
def create
ListItem.create
flash[:success] = "List Item Added."
redirect_to search_results_path(params[:search])
end
显然,我的 create 方法现在并不是很有用,因为它只是创建了一个 ListItem,除了:id
. 将适当的参数传递给我的控制器的最佳方式是什么?任何帮助深表感谢!提前致谢。