红宝石在轨道上3.2

下面的例子有没有一种方法可以在Slim中编写一个case语句。 我对StackOverflow问题做了一些改变:如何在Ruby中编写switch语句

case a
when 1..5
  = "It's between 1 and 5"
when 6
  = "It's 6"
when String
  = "You passed a string"
else
  = "You gave me #{a} -- I have no idea what to do with that."
end

我尝试了以下,但生成一个错误。

= case @taxon.name
  = when "Wedding Cakes"
    div.taxon-descripiton Wedding Cake Description

这就是我所知道的

... syntax error, unexpected tIVAR, expecting keyword_when
; @output_buffer.safe_concat(("<when>"Weddin...

=当你想渲染一些东西时使用= ,当你想调用一些ruby逻辑而不在视图中渲染任何东西时你应该使用-

   - case @taxon.name    
     - when "Wedding Cakes"    
       div.taxon-descripiton Wedding Cake Description

我不确定这会不会解决你的问题,你有没有考虑过把这个逻辑转移到装饰器上?

链接地址: http://www.djcxy.com/p/25639.html

上一篇: ruby on rails 3.2

下一篇: Why is `return a or b` a void value expression error in Ruby?