Kev*_*ker 4 html ruby haml sinatra
我有一个小的sinatra应用程序,我用来运行一个基本的网站.该网站的内容由客户提供,其中大部分来自PDF.因为我宁愿不必手动更换所有的<with <和&with &,有没有办法配置HAML/Sinatra自动为我做?
基本上,我有一些看起来像这样的块:
%p
large block of text here...
multi-line so I can see it in my IDE...
more lines here...
Run Code Online (Sandbox Code Playgroud)
我想找到一些配置选项,告诉HAML浏览所有内容并用他们的HTML实体对应物替换不安全的字符.
我尝试使用HTMLEntities gem,但这个网站有很多多行段落,我似乎无法让它工作.我的意思是我会在我的server.rb文件中做这样的事情:
def "/some_url"
@encoder = HTMLEntities.new
haml :some_template
end
Run Code Online (Sandbox Code Playgroud)
在我的模板中:
%p
= @encoder.encode("Really long multiline string...
some more lines here...
and more lines...")
Run Code Online (Sandbox Code Playgroud)
它会吐出关于错过结账的错误).
你可以使用:escaped过滤器:
%p
:escaped
A block of text here that might
contain & and <.
Run Code Online (Sandbox Code Playgroud)
输出:
<p>
A block of text here that might
contain & and <.
</p>
Run Code Online (Sandbox Code Playgroud)
它不是很自动,但可能会减少所需的编辑.