【问题标题】:rails get entire current url but change the http protocolrails 获取整个当前 url 但更改 http 协议
【发布时间】:2013-10-31 01:03:22
【问题描述】:

我需要在我的 Rails 视图中创建一个链接,该链接基本上将用户从普通的 http 页面带到同一页面,但使用的是 https。

我目前有类似的东西

 <a href="https://<%= request.env['HTTP_HOST']%><%= request.path %>">CLICK ME!</a>

但是:

  • 不包含参数字符串
  • 对我来说只是 hack-ish

有没有更好的方法将用户从 http 带到具有所有参数的相同相对请求路径?

【问题讨论】:

    标签: ruby-on-rails url parameters request


    【解决方案1】:

    试试类似的东西

    <%= link_to "CLICK ME!", named_url(protocol: 'https') %>
    

    named_url 是指向您要链接的任何内容的路径。

    编辑

    由于您没有命名路由并且只想使用用户所在的任何页面,您可以执行以下操作:

    <%= link_to "CLICK ME!", "https://#{request.host}#{request.fullpath}" %>
    

    您可以在此处找到有关 request 对象的更多信息:http://guides.rubyonrails.org/action_controller_overview.html#the-request-object

    【讨论】:

    • 这就是问题所在:我没有named_url - 它应该始终是与用户当前页面相同的完整网址(加上参数)。
    猜你喜欢
    • 1970-01-01
    • 2011-05-29
    • 1970-01-01
    • 2020-05-08
    • 1970-01-01
    • 2011-07-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多