Rails 2 アプリケーションを Rails 3 に移行しましたが、次の問題が発生しています。ビュー ファイルの 1 つで、次の JavaScript を呼び出しています (JQuery を使用)。
$.getJSON("<%= url_for(:controller => :visit_types, :action => :get_color)%>" + '/' + calEvent.visit_type_id, function(data) { calEvent.color = data;});
ページをロードすると、次のエラーが表示されます。
{:controller="visit_types", :action="get_color"} に一致するルートはありません
rake routes
出力:
/visit_types/get_color/:id(.:format) {:controller=>"visit_types",:action=>"get_color"}
それは本当です。通話:id
中にを渡しません。url_for()
しかし、Rails 2 ではこれが可能でした。どうすればこれを解決できますか?