Rails路由和URI片段标识符

时间:2009-07-22 08:03:13

标签: ruby-on-rails routing

当我使用一些基本教程开发我的RoR技能时遇到了问题。我想要实现的是拥有属于帖子的评论,没有单独的索引或个人视图。这部分很容易。

这是艰难的。我希望post_comment_url使用fragment identifierhttp://example.com/posts/2#comment-4返回地址。这将允许我使用redirect_to以最简单的形式,没有:anchor参数(这将违背 ruby​​方式保持简单)。

怎么做?

1 个答案:

答案 0 :(得分:12)

不是改变Rails的默认行为,而是用helper方法总结你的需求可能更好:

# 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的调用将允许您在视图和控制器中访问该方法。