2015-08-22 2 views
0

Вчера у меня была эта линия в моей форме.Рельсы - Маршрут изменен на собственном

%p= link_to "Reply", comment_reply_path(comment), :method => :get, :remote => true 

И он отлично работал. Однако сегодня, когда я запустил сайт rails, я получил неопределенную ошибку метода, и мне пришлось изменить код.

reply_comment_path(comment) 

Мой routes.rb содержит

resources :comments, :only => [:create, :destroy] do 
    get :reply, on: :member 
end 

Любая идея, почему это могло произойти?

+5

Невероятно, что маршрут изменился сам по себе. Вы можете пересмотреть свои предположения. – MarsAtomic

+1

это может быть человеческая ошибка, проверьте маршруты снова. – Arvind

ответ

2

Это потому, что ты вчера был

#routes.rb 
resources :comments, :only => [:create, :destroy] do 
    get :reply 
end 

это создаст префикс comment_reply так, что comment_reply_path(comment) работал просто отлично.

Но с тех пор как вы добавили on: :member, префикс изменится на reply_comment, поэтому вы должны использовать reply_comment_path(comment).

+0

Woah это шанс разбить вашу репутацию 4digitz –

+0

Yuup ....;) :) – Ojash

Смежные вопросы