Могу ли я обновить свой вложенный ресурс без прохождения через родительский класс?
Я помещаю это в маршруты
put 'ratings/:id' => 'ratings#update', :as => 'update_ratings'
и помещаю исключение для [: edit,: update] в маршрут вложенного ресурса
Мой контроллер
def update/edit
@rating = Rating.find(params[:id])
...
end
Мое представление редактирования:
<%= form_for(@rating, :url => update_ratings_path(@rating)) do |f| %>
Что происходит, так это то, что в журнале сервера говорится, что запрос на поставку выполняется, но атрибуты не обновляются.Затем страница перенаправляется к действию show, когда она должна перейти на страницу индекса родительского класса.
Журнал:
Started PUT "/ Ratings / 21" для 127.0.0.1 2011-09-25 19:31:18 -0700 Обработка RatingsController # показать как параметры HTML: {"utf8" => "✓", "authenticity_token" => "g4TkuG1xK8W96VSKdl3ZwedrqIXmcg9CDt6y8IqaFh0 =", "rating" => {"environment" =>>8 "}," commit "=>« Обновить рейтинг »,« id »=>« 21 »} Номинальная нагрузка (0,3 мс) ВЫБРАТЬ ratings
. * ОТ ratings
ГДЕ ratings
. id
= 21 ОГРАНИЧЕНИЕ1 Отображаются рейтинги / show.html.erb в макетах / приложениях (9,8 мс). Пользовательская нагрузка (0,4 мс) SELECT users
. * ОТ users
ГДЕ users
. id
= 1 ПРЕДЕЛ 1 Завершено 200 ОК за 151 мс(Просмотры: 143,4 мс | ActiveRecord: 4,8 мс)