我想获得一些关于设置ERB模板样式的最佳实践的社区意见。
- 我使用的选项卡宽度为 2。
- 我使用软制表符(空格)。
- 我使用 80 的自动换行。
除了 ERB 模板中的 Ruby 代码外,我还缩进了所有 HTML 标记。
这通常使ERB非常易读。
假设上述或类似的参数,您更喜欢缩进较长的行吗?
请考虑以下示例:
<div class="content">
<div class="row">
<div class="span10">
<%= simple_form_for(@user, html: { class: 'form-horizontal' }) do |f| %>
<%= f.input :MembershipID, label: 'Membership ID :', hint: 'Use the user's official Membership ID if they have one. Otherwise, enter their phone number (e.g. 2125551234)', input_html: { value: @user[:MembershipID] } %>
<% end %>
</div>
</div>
</div>
f.input行变得非常丑陋且不可读。
我认为这样的事情是理想的,但我想在改变我的很多风格之前得到一些反馈。
<div class="content">
<div class="row">
<div class="span10">
<%= simple_form_for(@user, html: { class: 'form-horizontal' }) do |f| %>
<%= f.input :MembershipID,
label: 'Membership ID :',
hint: 'Use the user's official Membership ID if they have one. Otherwise, enter their phone number (e.g. 2125551234)',
input_html: { value: @user[:MembershipID] } %>
<% end %>
</div>
</div>
</div>
我反复讨论从 ERB 开始标记 <%=</strong> 或从帮助程序名称 <strong>f.input</strong> 进行双重缩进是否更好。</p>
<p>请称量!(请不要把这变成ERB与HAML的辩论,假设ERB只有!</p>
<p>谢谢。</p>
</div>
<div class="one_answers"> <p>需要考虑的一些事项:</p>
<ul><li>不要使用"span10"和"row"类,而是在CSS中应用它</li>
<li>使用帮助程序,即使您不打算重用它们(目前),它也会清理您的代码</li>
</ul><p>这为您提供了类似以下内容:</p>
<p>SCSS:</p>
<div class="content">
<%= simple_form_for(@user) do |f| %>
<%= membership_input_field %>
<% end %>
</div>
<p>我现在无法对此进行测试,但您应该了解大致情况。更干净,更少无用的类来设置你的HTML样式。</p>
</div>
<div class="one_answers"> <p>对于长时间或复杂的 ERB 扩展,我经常像这样进行多行:</p>
.content {
@extend .row;
#users_form {
@extend .span10;
@extend .form-horizontal;
}
}
<p>很多行,但现在缩进对于给定的"意义"值都是"有意义的"。 哼!</p>
</div>
</html>%><div>
<div>
<%=
some_call_with_lots_of_args_or_a_block(
arg1,
arg2
) do
block_stuff()
end
%>
</div>
</div>