在不评估内联Ruby脚本的情况下将Haml转换为HTML

我需要将Haml脚本转换为等效的
HTML脚本.由于我在外部执行此操作而未运行主rails项目,因此Haml文件中存在的
Ruby脚本会抛出异常(这很明显).现在,我不介意Ruby脚本是否存在于输出HTML中(在这种情况下,它看起来像一个erb,这对我来说很好).我只关心一些html标签.

好像我可以覆盖Haml :: Engine#render(scope = Object.new,locals = {},& block)方法然后它可以帮助.但没有完全得到它.

任何的想法?

更新

仅将-foo和= foo块转换为Erb<%foo%>和<%= foo%> (分别)将无法完全工作,因为插值将在那里,如:

%div {:class => “#{cycle(”cssClass1“,”cssClass2“)} anotherCssClass”}

我案例的可接受输出可以是:
< div class =<%=“#{cycle(”cssClass1“,”cssClass2“)} anotherCssClass”%> >< / DIV>

除了那些插值,this适用于 – 和=.

最佳答案 你看过
HAML to ERB converter gem吗?

点赞