У меня есть некоторые рельсы обертоны, как:Дополнительная разрыв строки в рельсах частичного, когда переменный является необязательным
<%= content_tag_for(:div, child) do %>
<%= child.var1 %><br>
<%= child.var2 unless child.var2.blank? %><br>
<%= "Some string" if child.is_stringy? %>
<% end %>
, которые отображаются как так:
<%= render @object.children %>
Как сделать вторые и третьи разрывы строк быть необязательными без необходимости обернуть весь блок вокруг, если/если-то конец, например, так:
<%= content_tag_for(:div, child) do %>
<%= child.var1 %><br>
<% unless child.var2.blank? then %>
<%= child.var2 %><br>
<% end %>
<% if child.is_stringy? then %>
<%= "Some string" if child.is_stringy? %><br>
<% end %>
<% end %>
Я реа lly, как использовать if/if inline, для краткости и краткости. Я могу сделать что-то вроде этого:
<%= child.var2 + tag(:br) unless child.var2.blank? %>
Но тогда я должен исправить сбежавшего тег, например:
<%= raw(child.var2 + tag(:br)) unless child.var2.blank? %>
Который работает, но делает меня немного неудобный о разрешении произвольный HTML через var2. Какие-либо предложения?
С [Haml] (http://haml.info/) или [Тонкий] (http://slim-lang.com /) вы можете писать меньше. –
Как и в случае с примечанием, ключевое слово 'then' не требуется нигде в приведенном выше коде. –