2011-02-09 28 views
5

我使用RDiscount,但我的Ruby on Rails技能有限。 RDiscount具有将Markdown文本转换为HTML的.to_html功能。因此,这里的情景:使用RDiscount,我应该在哪里做实际的格式?

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

post.content是我要转换为HTML内容。

1)我应该在哪里创建一个方法将字符串转换为HTML?
2)如何阻止RoR转义RDiscount.to_html返回的HTML?

回答

11

1)优选地,在辅助 2)通过在生成的字符串主叫html_safe

我还没有在Rails 3应用程序,这逸出通过默认的内容使用降价,但创建类似于h一个辅助方法优先于Rails 3,它将markdown转换为html。为Rails 3的办法是像

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

视图

<% @posts.each do |post| %> 
    <h3><%= post.title %></h3> 
    <%= m post.content %> 
<% end %> 
相关问题