rails页面预览haml和html

时间:2012-07-17 09:04:41

标签: html ruby-on-rails haml

我有一个这样的页面,有一个select_tag用于选择引擎nilhaml,如果选中nil,则body_preview值为{{ 1}},直接显示html代码。如果选中' haml',在mail_body中编写$('#mail_body').val()代码,并且body_preview值转换为haml为html,则转换haml代码仅使用静态方法,而不是使用ruby动态价值。

$(#mail_body.val())

当发动机为零时

mail_body

<%= select_tag "engine", "<option></option><option>haml</option>",
                   :onchange => "$('#body_preview').trigger('load');"%>

<%= text_area_tag 'mail_body', nil,
                   :onchange => "$('#body_preview').trigger('load');" %>

<iframe id="body_preview"  
      onload="$('#engine').val() == 'haml' ? "???????" : $('#mail_body').val()">
</iframe>

body_preview

#content
  .left.column
    %h2 Welcome to our site!
    %p 2

当发动机是haml时 mail_body

#content .left.column %h2 Welcome to our site! %p 2

我希望body_preview是

#content
  .left.column
    %h2 Welcome to our site!
    %p 2

1 个答案:

答案 0 :(得分:0)

您可以使用haml engine处理haml。

template = File.read('templates/really_cool_template.haml')
haml_engine = Haml::Engine.new(template)
output = haml_engine.render
puts output