我的許多用戶都在輸入純網址,而不是使用Textile格式創建鏈接。我希望Textile將URL鏈接到URL。我並不需要擔心XSS或任何惡意軟件,因爲它是一個只有很少用戶羣的內部網絡。什麼是實現此功能的最佳途徑?我如何才能讓Textile通過純URL創建鏈接?
我使用Ruby版本的RedCloth。
我的許多用戶都在輸入純網址,而不是使用Textile格式創建鏈接。我希望Textile將URL鏈接到URL。我並不需要擔心XSS或任何惡意軟件,因爲它是一個只有很少用戶羣的內部網絡。什麼是實現此功能的最佳途徑?我如何才能讓Textile通過純URL創建鏈接?
我使用Ruby版本的RedCloth。
我不確定RedCloth是否可以將URL變成可點擊的鏈接,但是有一個名爲auto_link的Rails文本幫助程序可以。
這個怎麼樣?
def urls2links(s)
s.gsub(
/([^:])((https?|ftp)\:\/\/[^\s)'"]+[^.,)\s])(. |, |[\s]|\) |)/,
'\1<a href="\2" target="_blank">\2</a>\4')
end
def textile2html(s)
textilize(urls2links(s)).html_safe
end
使用該文本來測試它:
Plain urls converted to external links by my textile2html helper:
* http://www.google.com
* http://www.google.com,
* http://www.google.com.
有趣。我已經通過Textile發送數據,所以通過另一個解析器發送它並不是我想要做的。 – Sixty4Bit 2010-08-05 15:27:17