Locked History Actions

Diff for "Play/Begin"

Differences between revisions 2 and 3
Deletions are marked like this. Additions are marked like this.
Line 11: Line 11:

== デコレータの使い方 ==

複数ページにわたって同じデザインを用いるのはデコレータを使うのが簡単だが、指定方法は少々わかりにくい。例えば、
commonFrame.htmlの中にuserList.html等を埋め込むには、commonFrame.htmlを
{{{
<html>
<body>
...
#{doLayout/}
...
</body>
</html>
}}}
などとして、#{doLayout/}部分に各ページが埋め込まれるようにする。埋め込まれる側のuserList.htmlは
{{{
#{extends 'commonFrame.tml'/}
}}}
などと記述すればよいのだが、しかしこの行はuserList.htmlのどこにあってもよい。また、複数のextendsを記述すると、エラーは出ず、最も最後のものが有効になる。
{{{
#{extends 'commonFrame.tml'/}
#{extends 'anotherFrame.tml'/} <!-- これが有効 -->
}}}
であるから、extendsはファイルの最初に記述するよう習慣づけるのがよいと思われる。

簡単なアプリの作成

方針

既存のデータベース(PostgreSQL)データをメンテナンスするための社内用の簡単なアプリを作成する。

  • コードはSubversionで管理する。
  • テンプレートhtmlは入れ子機能と置換機能しか使用しない。テンプレート内での条件分岐や数式等は必要ない。
  • 既存データベースのスキーマは変更しない。
  • 社内で利用するためのものなので、デザイン等には凝らない。

デコレータの使い方

複数ページにわたって同じデザインを用いるのはデコレータを使うのが簡単だが、指定方法は少々わかりにくい。例えば、 commonFrame.htmlの中にuserList.html等を埋め込むには、commonFrame.htmlを

<html>
<body>
...
#{doLayout/}
...
</body>
</html>

などとして、#{doLayout/}部分に各ページが埋め込まれるようにする。埋め込まれる側のuserList.htmlは

#{extends 'commonFrame.tml'/}

などと記述すればよいのだが、しかしこの行はuserList.htmlのどこにあってもよい。また、複数のextendsを記述すると、エラーは出ず、最も最後のものが有効になる。

#{extends 'commonFrame.tml'/}
#{extends 'anotherFrame.tml'/} <!-- これが有効 -->

であるから、extendsはファイルの最初に記述するよう習慣づけるのがよいと思われる。