过滤铁轨中的链接

时间:2010-10-13 23:40:17

标签: ruby-on-rails

有没有办法过滤掉评论或表单中发布的链接。存储字段的列的数据类型可能是text或varchar。我本质上想要剥离嵌入内容的任何类型的网址。

2 个答案:

答案 0 :(得分:1)

您可以尝试strip_links。来自Rails文档:

strip_links('<a href="http://www.rubyonrails.org">Ruby on Rails</a>')
# => Ruby on Rails

strip_links('Please e-mail me at <a href="mailto:me@email.com">me@email.com</a>.')
# => Please e-mail me at me@email.com.

strip_links('Blog: <a href="http://www.myblog.com/" class="nav" target=\"_blank\">Visit</a>.')
# => Blog: Visit

还有一个strip_tags可以从字符串中删除任何HTML标记。

但是,您的模型中将无法使用这些功能;仅在您的观点中。据我所知,没有内置的方法可以从模型中实现这一点。如果需要在视图中执行此操作,可以尝试使用相关的ActiveView类扩展模型。否则,构造一个正则表达式来剥离链接应该相当容易。

答案 1 :(得分:0)

除了已经提到的strip_links和strip_tags之外,ActionView中还有许多有用的text helpers