Rails маршрутизация и идентификатор фрагмента URI - PullRequest
10 голосов
/ 22 июля 2009

Когда я развивал свои навыки RoR с некоторыми базовыми уроками, я столкнулся с проблемой. То, чего я пытаюсь добиться - это иметь комментарии, относящиеся к сообщениям, без отдельного индекса или отдельного представления. Эта часть была легкой.

А вот и жесткий. Я хочу post_comment_url вернуть адрес с идентификатором фрагмента : http://example.com/posts/2#comment-4. Это позволило бы мне использовать redirect_to в его простейшей форме, без параметра :anchor (что было бы против ruby ​​way для простоты).

Как это сделать?

1 Ответ

13 голосов
/ 23 июля 2009

Вместо того, чтобы изменить поведение Rails по умолчанию, было бы лучше обернуть ваши потребности вспомогательным методом:

# in app/controllers/application_controller.rb
class ApplicationController
  helper :comment_link

  def comment_link(comment)
    post_comment_url(comment.post, comment, :anchor => "comment-#{comment.id}")
  end
end

Вызов helper позволит вам получить доступ к этому методу в ваших представлениях, а также в ваших контроллерах.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...