我正在编写电子邮件视图,这在使用嵌套表时尤其令人讨厌.我的电子邮件的许多部分中的每一部分都需要围绕它的相同讨厌的东西:
%table.centered %tbody %tr %td %table.one-col{"emb-background-style" => ""} %tbody %tr %td.column %div .column-top %table.contents %tbody %tr %td.padded COPY COPY COPY ETC.
每个部分的内容都是大量的副本和链接以及诸如此类的内容,并将其放入ruby字符串或从单独的文件中呈现它将很难遵循.这是我想要模糊的瑕疵,而不是部分内容.
那么,有没有办法以某种方式连接残骸,使HAML减少缩进和苛刻?
这可能不会渲染部分.
你可以像这样制作一个帮助方法来隐藏你所说的所有"残酷".
# app/helpers/application_helper.rb def nested_blk_call(&blk) content_tag :div, class: "nested-tag-level-1" do content_tag :div, class: "nested-tag-level-2" do content_tag :div, class: "nested-tag-level-3" do blk.call "" end end end end # some_view.html.haml = nested_blk_call do .you-can-add-more-haml COPY COPY COPY ETC.
这将在浏览器中输出
COPY COPY COPY ETC.