我在Rails视图中有以下精简代码:
- @collection_tags.each do |c|
.cell.small-9.medium-4.large-3
= content_tag :h2, c.name
.brands-list
- first_letter = nil
- @brands.each do |brand|
- if brand.page.tags.where(group_id: APP_CONFIG[:collection_tags_group_id] || 2).first.id == c.id
- if brand.short_title.first.upcase != first_letter
- first_letter = brand.short_title.first.upcase
.letter-block
.letter
= first_letter
ul.menu.vertical
li
= link_to brand.short_title.capitalize, '#'
- else
li
= link_to brand.short_title.capitalize, '#'
结果如下。最后两项应该放在最后一个块中,因为字母仍然相同,但我不知道如何做到这一点,因为Slim基于缩进关闭HTML标记。
有什么方法可以让它在Slim中发挥作用,还是我应该回到ERB查看这个特定的视图?
查看您的输出,slim
似乎做了正确的事情。尝试缩进第二行li
,以匹配if的then
部分中li
的缩进级别。这将解决您的问题。