我有一个模型,产品,并在该模型的显示视图,我想有一个选择框,用户可以查看不同的产品。因此,如果用户在查看“产品1”页面,他们可以从选择框中选择“产品2”并查看该产品。如何创建在模型实例之间切换的表单?
下面是我用创建这个选择框代码:
<%= form_tag({:controller => "products", :action => "show"}, :method => :get) do %>
<%= select_tag :product_id, options_from_collection_for_select(Product.all, :id, :title) %>
<%= submit_tag 'Go' %>
但是,这是行不通的。我可以选择不同的产品,然后点击开始,但它只是用于同一个产品,而不是我在盒子中选择的产品。
我在这里做错了什么?
基本上,我尝试使用,而不是像这样一个选择框:
<% Product.all.each do |p| %>
<%= link_to p.title, p %>
<% end %>
这就是我对我的表演动作控制器:
@product = Product.find(params[:id])
rescue ActiveRecord::RecordNotFound
flash[:alert] = 'The product you were looking for could not be found'
redirect_to products_path
我没有在表演动作的任何代码,它只是直接传送到视图去.... – croceldon
你的表演动作至少应该具备以下条件: ' 高清显示 @product =产品.find(params [:id]) end ' 除非您使用自动为您定义@product的gem – Whereisccguys
我的不好 - 忘记了之前使用的过滤器。它现在添加到我的原始帖子中。 – croceldon