Slim中单个和双等的差异(= vs ==)

时间:2014-11-27 13:52:02

标签: ruby-on-rails slim-lang

在Slim中,我什么时候应该使用双等号?

例如:

== yield
== render 'partial'
== stylesheet_link_tag "application", media: "all"
title == full_title(yield(:title))

- flash.each do |key, value|
    == value

= yield
= render 'partial'
= stylesheet_link_tag "application", media: "all"
title == full_title(yield(:title))

- flash.each do |key, value|
    = value

2 个答案:

答案 0 :(得分:15)

  1. =插入带有转义字符的HTML。例如:

    = javascript_include_tag("1", "2")
    
  2. ==在不转义的情况下插入HTML。当您已经呈现HTML并且需要直接将其插入布局时,需要它。例如:

    == render 'footer'
    

答案 1 :(得分:11)

来自documentation

  

输出=

     

等号告诉Slim它是一个Ruby调用,它产生输出以添加到缓冲区。

     

没有HTML转义的输出==

     

与单个等号(=)相同,但不通过escape_html方法。

关于HTML转义的更新:

首先," html逃脱"意思是:

puts html_escape('is a > 0 & a < 10?')
# => is a &gt; 0 &amp; a &lt; 10?

然后,阅读一些关于为什么/何时想要这样做的内容: