我不禁要说,有一种更好的方法可以在Rails布局中编写下面的代码。有什么建议吗?
<% if remove_ads_from_page? %>
<div class="main-content without-ads">
<%= yield %>
</div>
<% else %>
<div class="main-content with-ads">
<%= yield %>
</div>
<% end %>发布于 2012-03-24 01:43:27
怎么样
<div class="main-content <%= remove_ads_from_page? ? 'without' : 'with' %>-ads">
<%= yield %>
</div>发布于 2012-03-24 01:41:43
<% if remove_ads_from_page? %>
<div class="main-content without-ads">
<% else %>
<div class="main-content with-ads">
<% end %>
<%= yield %>
</div>这应该是可行的。Rails并不关心您的html标记是否正确地封闭在if和else子句之间。这就是说,“如果remove_ads_from_page为真,则打印此代码段。否则,打印此代码段。”
发布于 2012-03-24 01:45:36
Elliot有几种方法可以从rails视图中提取逻辑。最简单的方法之一是使用gem draper
http://railscasts.com/episodes/286-draper
你可以做的另一件事是考虑使用HAML来清理你的视图。
https://stackoverflow.com/questions/9843922
复制相似问题