ruby Rails外部链接[关闭]

2lpgd968  于 12个月前  发布在  Ruby
关注(0)|答案(1)|浏览(94)

已关闭,此问题需要details or clarity。它目前不接受回答。
**想改善这个问题吗?**通过editing this post添加详细信息并澄清问题。

上个月关门了。
Improve this question
我试图给予外部链接,但它总是prepend与“localhost:3000”,除非我指定的URL开始与 httphttps。每当我让它开始与 www.google.com 它拒绝去外部链接,但合并它到当前页面。

<div class="col-10 d-flex justify-content-center gap-2">
                <% @user.links.each do |link| %>
                  <% if link.url.length > 1%>
                   <div>
                    <%= link_to  link.url ,target: "_blank", class: "btn btn-primary" do %>
                        <span><%= link.title %></span>
                    <% end %>
                   </div>
                  <% end %>
                <% end %>
</div>

我哪里做错了?我希望从链接中获得干净的URL。但是当我在localhost:3000/users页面时,它给了我localhost:3000/users/www.youtube.com

relj7zay

relj7zay1#

1.你绝对需要https://来指定它是外部链接
1.你可以创建一个
helper
方法,从你的模板中使用它来创建正确的外部链接,如下所示:

def external_link(link)
      return link if link.include?('https://')
    
      link.prepend('https://')
    end

然后在你的代码中只需要用途:

link_to external_link(link), target: '_blank', class: 'btn btn-primary'

相关问题