Railsで作る最も簡単なブログシステム(3)
Railsで作る最も簡単なブログシステム(2) - dan5yaの日記の続きです。
スタイルシートを適用する
あとで書く。
Aboutページ
ブログについての説明や、プロフィールを書いておく「About」のページを作ります。
app/views/home/about.html.erbというビューファイルを作成します。
app/views/home/about.html.erb
<h2>このブログについて</h2> <p>ここにブログの説明を書きます。</p> <h2>プロフィール</h2> <p>ここにプロフィールを書きます。</p>
ブラウザでhttp://localhost:3000/home/aboutを開くとabout.html.erbの内容が表示されます(このページはトップメニューの「About」をクリックすることで開くことも出来ます。)。ここには好きなことを書いておくことができます。
Archiveページ
閲覧者が記事の一覧表示できる「Archive」ページを作ります。
app/views/home/about.html.erbというビューファイルを作成します。
app/views/home/archive.html.erb
<h2>Archive</h2> <ul> <% for entry in @entries %> <li> <%=h entry.created_at.year %>年<%=h entry.created_at.month %>月<%=h entry.created_at.day %>日 …… <%=link_to h(entry.title), :action => 'show', :id => entry %> </li> <% end %> </ul>
上記のビューファイルは@entriesという変数を使用するので、コントローラにarchiveアクションを定義して、ビューが参照する@entriesを用意してやります。
app/controllers/home_controller.rb
class HomeController < ApplicationController def index @entries = Entry.find(:all, :order => "created_at DESC") end # ↓archiveメソッドを追加する def archive @entries = Entry.find(:all, :order => "created_at DESC") end end
上のようにHomeControllerにarchiveメソッドを定義します。
ブラウザでhttp://localhost:3000/home/archiveを開くとアーカイブページが表示されます(このページはトップメニューの「Archive」をクリックすることで開くことも出来ます。)。このページは記事の日付とタイトルの一覧が表示され、タイトルは各記事の本文にリンクされています。