2010-11-23 67 views
1

因此,我有一些包含鏈接的文本數據,現在什麼是在顯示數據時將它們轉換爲錨點的正確方法。在Rails中顯示數據時將鏈接轉換爲錨點

我看到的一種方法是做這樣的水漬raw(urlize(h(data))) ... 也許有更好的辦法嗎?

P.S.我不想用redcloth

回答

0

你可以寫一個實現Daring Fireball啓發鏈接匹配的方法:

class String 
    def urlify 
    gsub(%r{\b(([\w-]+://?|www[.])[^\s()<>]+(?:\([\w\d]+\)|([^[:punct:]\s]|/)))}u) do |s| 
     %Q{<a href="#{s}">#{s}</a>} 
    end.html_safe 
    end 
end 

這將連接用什麼樣http://mailto:正確的協議前綴,但應小心跳過或去掉javascript:鏈接。

+0

它不是對我來說,轉換鏈接的錨的一個問題,什麼是竊聽我的是,我不知道這是否是合理的逃生數據,則urlize並在最終將其作爲原始數據返回,以便呈現鏈接。 – spacemonkey 2010-11-23 20:09:10

0

我們可以使用auto_link寶石here

相關問題