我有一個模型,產品,並在該模型的顯示視圖,我想有一個選擇框,用戶可以查看不同的產品。因此,如果用戶在查看「產品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