2011-02-09 9 views

cevap

18

Raylar, auto_link metin yardımcısına sahiptir.

auto_link("Go to http://www.rubyonrails.org and say hello to [email protected]") 
# => "Go to <a href=\"http://www.rubyonrails.org\">http://www.rubyonrails.org</a> and 
#  say hello to <a href=\"mailto:[email protected]\">[email protected]</a>" 

auto_link("Visit http://www.loudthinking.com/ or e-mail [email protected]", :link => :urls) 
# => "Visit <a href=\"http://www.loudthinking.com/\">http://www.loudthinking.com/</a> 
#  or e-mail [email protected]" 
+0

Bunu hiç duymadım. Harika! – fl00r

+2

Rails 3.1+ kullanıyorsanız, lütfen nikstep başına rails_autolink kullanın – Dean

+0

Sağladığınız linkte auto_link bulunamıyor. Alternatif dokümantasyon: http://apidock.com/rails/ActionView/Helpers/TextHelper/auto_link –

-3

İlk olarak,

 
IPv4_PART = /\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]/ # 0-255 
REGEXP = %r{ 
    https?://             # http:// or https:// 
    ([^\s:@]+:[^\s:@]*@)?          # optional username:[email protected] 
    ((([^\W_]+\.)*xn--)?[^\W_]+([-.][^\W_]+)*\.[a-z]{2,6}\.? | # domain (including Punycode/IDN)... 
     #{IPv4_PART}(\.#{IPv4_PART}){3})      # or IPv4 
    (:\d{1,5})?             # optional port 
    ([/?]\S*)?             
}iux 

sonra örneğin bir regexp'in eşleştirme http dizeleri tanımlamak gerekir, yorum vücut str olduğunu varsayalım, yapmanız:

 
str.gsub(REGEXP) do |m| 
    link_to m, m 
end 
+1

kendi URL eşleyici Rolling gerçekten berbat bir fikir - Eğer ** ** Bir hata yapacaktır. Bir kütüphane kullan. :) –

0

Ayrıca "auto_html kullanabilirsiniz "gem, bkz. https://github.com/dejan/auto_html.

Yasal Uyarı: Henüz kendim kullanmadım, ama istediğini yapabilirmiş gibi görünüyor.

+0

Sorunun ne istediğinden daha fazlasını yapar, bu ilginç, ancak yeni bir mücevher gerektiriyor. Auto_link daha basittir. –

0

ben de yorumlar için Markdown gibi bir şey düşünmeye öneriyoruz. Ardından Markdown motorunun sizin gibi şeyler için endişelenmesine izin verebilirsiniz. Gelen

İlgili konular