0
我想检查一个字符串并将任何@something
更改为链接。所以,我有它由这样的一个辅助功能:Ruby on Rails 3 gsub转义link_to方法的锚点
def parse(content)
content.gsub(/@[a-zA-z0-9]+\b/, link_to("#{$1}", user_path($1)))
end
但结果是<a href="https://stackoverflow.com/users/102"></a>
的问题是:
- 的
<a href="https://stackoverflow.com/users/102"></a>
是一个字符串,因为不知何故<
和>
已被转义。 - 为什么
"#{$1}"
什么都不返回?是不是应该返回检查的东西,在这种情况下@something
?
我试过你的解决方案,但现在的锚文本,并在href都是一样的,我的意思是,$ 1点返回相同的数值是:/users/102。有任何想法吗? – Henson 2012-02-21 09:36:18
没关系,我正在使用像这样的块,它现在可以工作。 {| str | link_to(str,$ 1)}谢谢! – Henson 2012-02-21 09:39:42