Slim中的案例陈述
问题描述:
在下面的示例中,是否有方法在Slim中编写case语句?我做对的*问题的一些变化:How to write a switch statement in RubySlim中的案例陈述
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...
答
=
使用时要呈现的东西,当你要调用一些红宝石逻辑,而在一个视图中呈现什么,你应该使用-
:
- case @taxon.name
- when "Wedding Cakes"
div.taxon-descripiton Wedding Cake Description
我不知道这会解决你的问题,但你有没有考虑过把这个逻辑转移到装饰器呢?
我不确定装修工是什么,我也没有在网上找到任何修身装饰,你能给我一个提示。我只是好奇而已。我会尝试一下,如果有效,接受作为答案。感谢您的帮助! – 2013-05-04 17:24:10
太棒了!但你是否会善意地告诉我“装饰者”是什么? – 2013-05-04 17:29:19
装饰器只是另一种从视图中提取逻辑以保持它们干净的方式,如果你想开始使用它们,我建议你看看draper gem https://github.com/drapergem/draper。有一个轨道视频可以学习基础知识。 :) – 2013-05-04 19:07:39