У меня есть веб-сайт, и до того, как я включил дизайн и некоторые изменения (макет, скрипты и т. Д.), Он работал нормально. Затем я не знаю, что произошло, но метод onChange из моего поля выбора обращается к действию «show», а не тому, что написано в строке.Поле доступа к неправильному действию контроллера на onChange
У меня есть следующие в моем Новый взгляд:
<%= collection_select('category', 'id', @categories, 'id', 'name', {:prompt => "Choose a category"}, {:onchange => "#{remote_function(:url => {:controller => 'announcements', :action => "update_subcategories"}, :with => "'parent_id='+value")}",:class => 'newAd_box2_inputField'}) %>
Идея заключается в том, что он обновляет второе поле выбора с записями, связанных с выбранной.
Второй выберите выглядит следующим образом:
<%= render :partial => 'category_select', :object => @subcategories %>
Опять же, это работает большой, прежде чем я внес некоторые изменения, но теперь он просто не будет идти к действию «update_subcategories», он просто идет в «шоу ».
В моем routes.rb я получил следующее:
map.show "/announcements/:permalink", :controller => 'announcements', :action => 'show'
map.new "/announcements/new", :controller => 'announcements', :action => 'new'
Кто-нибудь знает, что происходит?
У вас все еще есть маршрут для 'AnnouncementsController # update_subcategories'? В файле 'routes.rb', который вы отправили, есть только маршруты в« АнонсыController # show »и« AnnouncementsController # new ». Как выглядит сгенерированный Javascript/HTML для представления 'new'? –