[mayaa-user:630] Re: [mayaa]複数のmayaaファイルをデフォルトにしたい

suga [E-MAIL ADDRESS DELETED]
2008年 2月 20日 (水) 08:22:37 JST


suga です。

> ・あるACTIONには複数のHTMLファイルが必要。
> 〜動的な取得項目に関しては一律だが、デザインは自由に変えたい。
> 〜ユーザに自由にアップ(一定のネーミングルールでUPさせる前提
> ですが)させる運用にしたいため、mayaaファイルを1つのものと
> したい。

一番近いのはテンプレート切り換え機能を使うことですね。
http://mayaa.seasar.org/documentation/template_suffix.html

ファイルは同じ階層に置く必要があり、ファイル名はサフィックスのみ
異なるようして作り分ける形になります。


> 【イメージは以下です】
> リクエルト                     読込HTML      適用mayaaファイル
> ------------------------------------------------------------
> Aアクション/aaa/bbb/    aaa/bbb.html           A.mayaa
> Aアクション/aaa/          aaa.html                 A.mayaa
> Aアクション/ccc/ddd/   ccc/ddd.html          A.mayaa
> Bアクション/ddd/eee/   ddd/eee.html          B.mayaa
> Bアクション/fff/         fff.html                   B.mayaa
> Bアクション/ggg/hhh/   ggg/hhh.html          B.mayaa

Aアクション/* がすべて同じ Action クラスを使うということで
あれば、forward する先も同じ HTML ファイル名にし、何らかの
条件で m:templateSuffix の値を変えるようにすれば、期待する
動作になるのではないでしょうか。

たとえばこんな感じになるでしょう。
aaa.mayaa
aaa.html
aaa$bbb.html
aaa$cccddd.html

bbb.mayaa
bbb.html
bbb$dddeee.html
bbb$fff.html
bbb$ggghhh.html

どうしても別のディレクトリのもので同じ Mayaa を使いたいという
場合、独自の実装を作ってエンジン設定で実装クラスを入れ替える
しかありません。


おすすめはしませんが、プロセッサ (カスタムタグ) の数が少なければ
m:id がぶつからないようにして全部 default.mayaa に書くという手もあります。

-- 
suga ( [E-MAIL ADDRESS DELETED] )


mayaa-user メーリングリストの案内