powered by nequal

rhaco1-doc :: 100-blog-tutorial/06-view-template-association.txt

http://wikihub.org/wiki/rhaco1-doc/100-blog-tutorial/06-view-template-association

Table of contents:

collapse all expand all

Updates:

汎用 Views

rhaco では,汎用 Views ( generic.Views )を用いることにより,一覧,詳細,作成,更新,削除のためのコードを記述する必要が無いことを学びました.

ちなみに,汎用ビューには次のものがあります.

ビュー 動作
read ページング付一覧,検索
detail 詳細表示
create 新規作成
confirmedCreate 確認画面付き新規作成
update 更新
confirmedUpdate 確認画面付き更新
drop 削除 ( 確認画面付き削除にも対応 )
import CSV形式のデータの取り込み(UTF-8)
export テーブルをCSV形式で出力(UTF-8)

これらのビューにモデルを渡すことによって,モデルに対応するデータベースのテーブルレコードへの処理となります.

日本国内では,確認画面付きのシステムを求められる場面が多いですが,それらは標準で用意されていることも特徴です.

テンプレートの連携

さて,投稿記事の一覧・検索,投稿,削除,編集と一通りできるようになりましたが,現在はそれぞれの処理は URL を直接たたかないとできません.

これでは,使い物になりませんよね? rhaco では,汎用 Views を用いている場合には,これを簡単に差し替えられます.

では,次のようにファイルをコピーしてください.

  1. /DocumentRoot/rhaco/resources/templates/generic/views/main.html -> /DocumentRoot/blog/resources/templates/generic/main.html
  2. /DocumentRoot/rhaco/resources/templates/generic/views/confirm.html -> /DocumentRoot/blog/resources/templates/generic/post_confirm.html
  3. /DocumentRoot/rhaco/resources/templates/generic/views/form.html -> /DocumentRoot/blog/resources/templates/generic/post_form.html
  4. /DocumentRoot/rhaco/resources/templates/generic/views/list.html -> /DocumentRoot/blog/resources/templates/generic/post_list.html

これで,テンプレートの差し替えが完了しました.

といっても,中身をいじってませんので,表示は変わりませんけどね.

汎用ビューとテンプレートの連携の規則

規則は非常に単純です.ファイル名は,次の通りです.

全て小文字にしたモデルクラス名 + "_" + ページタイプ + ".html"

このファイルを, /DocumentRoot/blog/resources/templates/generic/ 以下に配置するだけです.

ページタイプには,以下のものがあります.

ページタイプ ビュー
list read
detail detail
form create, confirmedCreate, update, confirmedUpdate
confirm confirmedCreate, confirmedUpdate
confirm_delete drop

このようにして,テンプレートの差し替えは非常に簡単にできます.

いつでも差し替えることができるとわかっていれば,先にロジックに集中できますね!

参考