haml中的html实体

cor*_*ded 14 haml html-entities

你怎么写:

= link_to 'Select »', "/" 
Run Code Online (Sandbox Code Playgroud)

在HAML中吗?

= link_to 'Select »', "/" 
Run Code Online (Sandbox Code Playgroud)

再打印»一次.

来自Phrogz的回答

= link_to('Select »'.html_safe,'/')
Run Code Online (Sandbox Code Playgroud)

做了伎俩

Phr*_*ogz 6

在最简单的测试中,Haml不会使用您的HTML实体:

> require "haml"
#=> true
> Haml::Engine.new('%p= "See »"').render
#=> "<p>See &raquo;</p>\n"
Run Code Online (Sandbox Code Playgroud)

您的问题可能不是Haml,而是使用link_to或Rails本身的显式HTML转义.

例如,看到这个问题,并且:
Ruby on Rails似乎是自动转义由link_to创建的html

如果您使用带有Rails的Haml,也许可以尝试:

= raw link_to('Select &raquo;','/')
Run Code Online (Sandbox Code Playgroud)

或者,我会在整个管道中使用正确的Unicode,这样就不会意外&地转换&amp;.

  • 啊但是link_to('选择&raquo;'.html_safe,'/')就可以了 (4认同)