2011-02-09 10 views
5

RDiscount kullanıyorum ancak Ruby on Rails becerilerim sınırlı. RDiscount, Markdown metnini HTML'ye dönüştüren .to_html işlevine sahiptir. Yani burada senaryo:RDiscount'u kullanarak, gerçek formatı nerede yapmalıyım?

<% @posts.each do |post| %>
<h3><%= post.title %></h3>
<%= post.content %>
<% end %>

post.content ben html dönüştürmek istediğiniz şeydir.

1) Dizeyi HTML'ye dönüştürmek için bir yöntem nerede oluşturmalıyım?
2) RoR, RDiscount.to_html döndürdüğü HTML'den kaçmayı nasıl durdurabilirim?

cevap

11

1) tercihen, ortaya çıkan ip üzerinde html_safe arayarak bir yardımcı 2) 'de

I varsayılan içeriği kaçar Raylar 3 uygulama bölgesi Markdown kullanılır, ancak h benzer bir yardımcı yaratmadıysanız yöntemi, işaretlemeyi html'ye dönüştüren Rails 3'ten önceki yöntemdir. Raylar 3 yaklaşım görünümünde

module Helper 
    def m(string) 
    RDiscount.new(string).to_html.html_safe 
    end 
end 

gibi bir şey olurdu

<% @posts.each do |post| %> 
    <h3><%= post.title %></h3> 
    <%= m post.content %> 
<% end %> 
İlgili konular