7

如何在视图上呈现的文本/字符串中为 url 创建自动超链接?我有一个呈现用户活动日志的页面,在该日志/文本/字符串中有一些随机 url,我想自动超链接以在新的浏览器窗口中打开。ruby rails中有这个auto_link,我该如何使用它?

text = "User xyz accessed url - http://www.something.com on 04/13/2012 00:13:18GMT"

<%= "#{Text}" %>

我希望它带有指向 url 的超链接。URL 可以是文本中的任何位置。

4

2 回答 2

13

像这样使用 auto_link:

<%= auto_link(text) %>

如果您希望生成的链接打开新的浏览器窗口(或选项卡),请添加如下选项:

<%= auto_link(text, :html => { :target => '_blank' }) %>

正如评论中 pjumble 所提到的,auto_link从 Rails 3.1 开始,它不再是 Rails 核心的一部分,这个 gem 将它带回来:https ://github.com/tenderlove/rails_autolink感谢 pjumble!

于 2012-04-15T00:49:13.080 回答
3

为了更快地解析,请尝试https://github.com/vmg/rinku

require 'rinku'
Rinku.auto_link(text, mode=:all, link_attr=nil, skip_tags=nil)

此外,通常需要更多过滤器而不仅仅是链接,例如 Youtube 嵌入式视频。为此用途:https ://github.com/dejan/auto_html

于 2015-05-30T12:44:32.797 回答