When I was developing my RoR skills with some basic tutorials I encountered a problem. What I am trying to achieve is having comments belonging to posts, with no separate index or individual view. This part was easy.
Here comes tough one. I want post_comment_url
to return address with fragment identifier: http://example.com/posts/2#comment-4
. It would allow me to use redirect_to
in it's simplest form, without :anchor
parameter (which would be against ruby way of keeping things simple).
How to do that?
Instead of altering Rails' default behavior, it'd probably be better to wrap up your needs in a helper method:
# 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
The call to helper
will allow you to access that method in your views as well as your controllers.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With