Mayaa の弱点は *.html と *.mayaa の同期

 View テンプレートとして HTML だけで完結する Teeda ですが、この HTML は気持ち悪いほど id 属性に制約があります。一方、Mayaa は *.mayaa という別ファイルに振る舞いを記述するので *.html は Teeda に比べてピュアな状態になります。でも、その二つをかみ合わせるという手間がかかるのも事実で、上手く同期を取らせることができなければ *.html をナマで見たときの見た目と、実行時の見た目が違ったなんてこともありうるわけです。

 なのでやっぱり View テンプレートは 1 つの HTML にしたいですね。それでかなり前に HTML コメントに意味を持たせられないかというエントリを書きましたが、今、再びその気持ちが強くなってきました。

 まず、HTML に書いてある情報は素直にバリデータとして動いてほしいですね。せっかく maxlength 属性を指定しても、サーバ側には何の影響もないのはもったいない。それに select ボックスや radio ボタンだって、そのまま範囲チェックなどのバリデーションとして稼動するようになればずっとセキュアな Web アプリケーションができそう。

 それで、HTML の文法として書ききれない場合は後続する(ホワイトスペースは無視) HTML コメントにかけたりするといいなぁ。↓こんな感じ。money 項目は0〜99,999の値をとる整数って意味。

<input type="text" name="money" maxlength="6" />
<!--#{integer, range(0,99999)}-->