ある画面だけ、テーマ色を変えないといけないとき
一番下 @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>