How do you use anchors for IDs in routes in Rails 3?

前端 未结 2 838
不知归路
不知归路 2021-01-01 09:31

Imagine a blog with posts and comments. An individual comment\'s URL might be posts/741/comments/1220.

However, I\'d like to m

2条回答
  •  悲&欢浪女
    2021-01-01 10:01

    You could simply use

    redirect_to post_path(comment.post, :anchor => "comment-#{comment.id}")
    

    to manually build the URL with the anchor. That way, you can still have the absolute URL to your comments as posts/:post_id/comments/:comment_id in your routes. You can also create a helper method in e.g. application_controller.rb

    class ApplicationController
      helper :comment_link
    
      def comment_link(comment)
        post_path(comment.post, :anchor => "comment-#{comment.id}")
      end
    end
    

提交回复
热议问题