1

我在 Rails 之外使用 Haml,需要打印出未转义的字符串:

%div{ foo: '<?php echo "bar" %>' }

变成

<div foo='&lt;?php echo "bar" %&gt;'></div>

但我想要

<div foo='<?php echo "bar" %>'></div>

raw并且html_safe没有在 Rails 之外定义,我尝试要求它们并将它们混合,但最终结果是相同的。也许我在这里遗漏了一些明显的东西......

4

2 回答 2

1

您需要将escape_attrs选项设置为 false。

从命令行你可以使用类似的东西

$ haml --no-escape-attrs my_file.haml

或来自 Ruby 之类的:

Haml::Engine.new(my_template, :escape_attrs => false).to_html
于 2013-10-05T11:37:57.387 回答
0

好吧,据我了解,没有简单的方法可以做到这一点。参考:https ://groups.google.com/forum/#!topic/haml/RScABe1Txh8

似乎你将不得不做一些骇人听闻的事情。

我只能考虑用 HTML 编写特定部分并将其放在:plain块中。

于 2013-10-05T10:41:12.763 回答