2014-07-01 21 views
0

我有一個部分,它支持標題值以及一個字幕值或塊:多產量從部分

<header class="PrimaryHeader"> 
    <h1 class="Title"><%= title %></h1> 
    <% if defined? subtitle %> 
    <div class="Subtitle"><%= subtitle %></div> 
    <% else %> 
    <%= yield %> 
    <% end %> 
</header> 

其中我呈現這樣的:

<%= render layout: 'shared/headers/primary_header', locals: {title: "Edit Gallery"} do %> 
    <div class="special">Subtitle</div> 
<% end %> 

我怎樣才能還支持標題的可選塊?

基本上相當於:

<header class="PrimaryHeader"> 
    <% if defined? title %> 
    <h1 class="Title"><%= title %></h1> 
    <% else %> 
    <%= yield %> 
    <% end %> 
    <% if defined? subtitle %> 
    <div class="Subtitle"><%= subtitle %></div> 
    <% else %> 
    <%= yield %> 
    <% end %> 
</header> 

回答

0

而不是使用當地人那樣的,我可能會使用多個高產區。你可以做到這一點:

<header class='PrimaryHeader'> 
    <%= content_tag(:h1, yield :title, class: 'Title') if content_for?(:title) %> 
    <%= content_tag(:h2, yield :subtitle, class: 'Subtitle') if content_for?(:subtitle) %> 
    <%= yield %> 
</header>