FrontPage  Index  Search  Changes  Login

RailsでWikiクローンを作る07

layoutにadminmenuを追加

wikiコントローラのlayoutファイル(app/views/layouts/wiki.rhtml)を修正し て、Hiki の adminmenu に相当するリンクを追加します。 adminmenu とは、 Hikiの各ページの上部に表示されている「新規作成」「編集」などのリンクの ことです。

app/views/layouts/wiki.rhtml の、<div class="main">と <h1 class="header">の間に、以下の行を挿入します。

<div class="adminmenu">
  <span class="adminmenu"><%= link_to '新規作成', :action => 'new' %></span>
  <% if controller.action_name == 'show'%>
    <span class="adminmenu"><%= link_to '編集', :action => 'edit', :id => @page.name %></span>
  <% end %>
  <span class="adminmenu"><%= link_to 'FrontPage', :action => 'show', :id => 'FrontPage' %></span>
  <span class="adminmenu"><%= link_to '一覧', :action => 'list' %></span>
  <span class="adminmenu"><%= link_to '管理', :controller => 'admin', :action => 'basic' %></span>
</div>

基本的には、link_to を並べて、各アクションへのリンクを作っているだけで す。ただし、「編集」のリンクは、show アクションでページが表示されてい るときだけ存在するようにしたいので、controller.action_name を見て条件 分岐しています。 controller.action_name で、ビューの中からアクション名 を得ることができます。

また、最後の「管理」のリンクは、まだ実装していない管理画面へのリンクで すが、それは admin コントローラとして別のコントローラにする予定です。 別のコントローラへリンクするときは :controller => 'admin' のようにコン トローラ名を指定します。

adminmenu

Last modified:2005/11/27 13:01:01
Keyword(s):
References:[RailsでWikiクローンを作る]