私は単純な問題で立ち往生しています。form タグと select タグがあります。変更時に、ユーザーが選択したカテゴリに移動するようにします。
このフォームはヘッダーで利用でき、カテゴリーコントローラーで change_category アクションを定義しました。
これがどのように見えるかです: -
application.html.haml
=render :partial => "categories/category"
カテゴリ_コントローラー.rb
def change_category
@categories = Category.all
@category_name = params[:main]
@category = Category.find(params[:main])
end
_category.html.haml
=form_tag(change_category_category_path(@category),:method => "get", :remote => true) do
=select_tag(:main, options_for_select(Category.all.collect {|p| [p.name,p.id]}), :prompt => "Select Category", :onchange => 'this.form.submit();')
route.rb
resources :categories do
member do
get :change_category
end
end
エラー :-
No route matches {:action=>"change_category", :controller=>"categories", :id=>nil}
問題は @category が nil と評価されることだと思います。どうすればこれを解決できますか?