レイアウト。情報を上に上げていく

ある画面だけ、テーマ色を変えないといけないとき

一番下 @color = "new_color"
それをレンダリングしているテンプレート @color = (@color || base_color)

それをレンダリングしている全体のテンプレート @colorを色指定に使う。

 <% 
    @title = "ユーザー情報登録完了"
    @color = entried_color
 -%>

 <hr size = "2" color=<%= entried_color%> style="background-color:<%= entried_color %> ;">

 <p>
  さんの経験値は<font color="red">500p</font>です。
 </p>

 <div align="center">
   <%=link_to "マイページ",:controller => "user",:action => "my_page"  %><br>
 </div>

▼この一つ上のレイアウト

 <%
  @color = (@color || "skyblue")

  #< のせいか、ヒアドキュメントが上手く働かない 
  @header = "<hr size='2' color=#{@color} style='background-color:#{@color};'>"+
              "#{(@title || '')}"+
            "<hr size='2' color=#{@color} style='background-color:#{@color};'>"
 
 
  @footter = link_to("[0]トップ",{:controller => "account",:action => "index"},:accesskey => "0")

 -%>
 <%= render :file => "/layouts/mobile/user_base" %>
 <%  @color=(@color || "skyblue")  -%>

▼さらに上(全体)のテンプレート

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
       "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html>
 <head>

 </head>
 <body>

 <% if @header %>
   <div align="center">
     <%= @header %>
   </div>
 <% end -%>

 <% if flash[:notice]  -%> 
 <font color="red"><%="" +flash[:notice] %></font>
 <br><br>
 <% end -%>

 <%= @content_for_layout %>

 <% if @footter -%>
 <hr size="2" color=<%= @color%> style="background-color:<%= @color%>;">
  <%= @footter %>
 <br><br>
 <% end -%>

 <div align="center">
 <table width="100%" bgcolor=<%=@color%> style="background-color:<%= @color %>;">
   <tr>
     <td align="center"> Example Fotter </td>
   </tr>
 </table>
 </div>

 </body>
 </html>