我有一行像这样的HAML:
%li{:id=>node.shortcode, :class=>liclass unless liclass.empty? }
哪个不起作用。如果提供的条件不正确,我只想传递'class'参数。有没有一种很好的方法在Ruby中执行此操作我只需要使用if / else?
答案 0 :(得分:4)
试试这个:
%li{({:id=>node.shortcode}.merge(liclass.empty? ? {} : {:class=>liclass}) )}
它不漂亮,但它会为你提供你所追求的标记。
答案 1 :(得分:1)
%li{:id=>node.shortcode, :class=>(liclass unless liclass.empty?)}
答案 2 :(得分:0)
当liclass
为空时,它不应该分配课程,但我不确定
试试这个:
%li{:id=>node.shortcode, :class=>liclass }