How do I get the current absolute URL in Ruby on Rails?

后端 未结 30 2104
佛祖请我去吃肉
佛祖请我去吃肉 2020-11-22 13:47

How can I get the current absolute URL in my Ruby on Rails view?

The request.request_uri only returns the relative URL

30条回答
  •  清酒与你
    2020-11-22 14:25

    For Rails 3.2 or Rails 4+

    You should use request.original_url to get the current URL.

    This method is documented at original_url method, but if you're curious, the implementation is:

    def original_url
      base_url + original_fullpath
    end
    

    For Rails 3:

    You can write "#{request.protocol}#{request.host_with_port}#{request.fullpath}", since request.url is now deprecated.


    For Rails 2:

    You can write request.url instead of request.request_uri. This combines the protocol (usually http://) with the host, and request_uri to give you the full address.

提交回复
热议问题