【问题标题】:Rails: transform plain text to link with rails_autolinkRails:将纯文本转换为与 rails_autolink 链接
【发布时间】:2016-04-04 21:35:34
【问题描述】:

我有一个 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,但我对如何使用它有点困惑。这是我的配置:

gemfile.rb

gem 'rails_autolink', '~> 1.1', '>= 1.1.6'

观看次数:

<% if @pin.website.blank? %>
<% else %>
  <%= auto_link(@pin.website) %>
<% end %>

application.rb

require 'rails_autolink'

但它不起作用,链接显示为纯文本。任何帮助,我错过了什么。我一直在寻找其他线程,但似乎没有任何问题可以解决我的问题...

更新: 如果用户只使用 www 传递 url,它现在运行良好。并且没有 http://,但是有没有办法将这样的原始文本:website.com 转换为 http://www.website.com

【问题讨论】:

    标签: ruby-on-rails hyperlink autolink


    【解决方案1】:

    自动链接仍然需要在网址上添加 HTTPHTTPS。我的建议是从控制器层开始并从那里解析它。如果提交的网站中没有“http”,则添加它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-04-07
      • 1970-01-01
      • 2023-03-11
      • 2020-02-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-03
      相关资源
      最近更新 更多