我有一个 Rails 应用程序,用户可以在其中发布 pin 模型内的链接。这是解释的代码:
app/views/pins/_form.html.erb:
<%= f.text_field :website, placeholder: "http://wwww.website.com" %>
在我看来:
<% if @pin.website.blank? %>
<% else %>
<a href="<%= @pin.website %>" target="_blank">
<% end %>
如果用户将完整的 url ( http://www.website.com ) 放在该字段中,效果很好,但如果他忘记添加 'http://' => (www.website.com) 页面明显坏了。
我正在考虑使用 gem auto_link但我对如何使用它有点困惑。这是我的配置:
宝石文件.rb
gem 'rails_autolink', '~> 1.1', '>= 1.1.6'
意见:
<% if @pin.website.blank? %>
<% else %>
<%= auto_link(@pin.website) %>
<% end %>
应用程序.rb
require 'rails_autolink'
但这不起作用,链接显示为纯文本。任何帮助,我错过了什么。我一直在寻找其他线程,但似乎没有任何问题可以解决我的问题......
更新:如果用户只使用 www 传递 url,它现在运行良好。并且没有 http://,但是有没有办法将这样的原始文本转换为: website.com 到http://www.website.com?