Это должно работать нормально:Нет ошибки пути для класса
#comment.rb
def next
self.class.where("id > ?", id).first
end
#comments_controller.rb
def show
find_comment
@next_comment = @comment.next
end
#show.html.haml
= link_to "next", @next_comment
#routes.rb
resources :articles do
resources :comments
end
Я получаю undefined method comment_path
ошибку.
Что мне не хватает? Пожалуйста, дайте мне знать, если есть какие-либо файлы, которые я не включил.
UPDATE:
Хорошо, благодаря @pascal Бец он идет на правильный URL. Я получаю ошибку теперь undefined method article for nil:NilClass
, указывая на кнопку линии в шоу-странице:
= link_to 'Next', article_comment_path(@next_comment.article, @next_comment)
Что делает рейк-маршрут? – jvillian
Ваше обновление: это означает, что @next_comment равно нулю. Вы проверили это? Не будет следующего комментария. Поэтому вам нужно сделать эту ссылку условной (только если присутствует следующий_комментарий). Это помогает? –
Да, это работает. Большое спасибо. – Liroy