[ethna-users:1178] Re: テンプレートから多次元配列フォームを参照する方法

Yoshinari Takaoka takaoka @ beatcraft.com
2009年 9月 20日 (日) 18:21:52 JST


高岡@コードレビュー中 です。

2009/9/20 http://www.remix.gr.jp/ <www.remix.gr.jp @ gmail.com>:
> Ethna 2.5.0 preview3 以降の多次元配列に対応したフォーム についての質問です。
> http://ethna.jp/ethna-document-dev_guide-form-multiarray.html
>
> 早速試させていただいているのですが、例えば
>   var $form = array(
>       'User[name]' => array(
>           'name'          => '名前',
>           'type'          => VAR_TYPE_STRING,
>           'form_type'     => FORM_TYPE_TEXT,
>       ),
> 上記のフォームの値を、Smartyテンプレートから参照する場合は
> どうのように記述すればよいでしょうか?
>
> 従来のフォーム値を {$form.User} と参照するように、
> 上記の場合 {$User[name]} として参照しましたらコンパイルエラーでした。
> smarty変数 に assign する前にも配列として認識するように
> 別の変数で再定義すればよいでしょうか。

多次元配列としてSubmitした値は、アクション上では $User[name] という
連想配列の形式で参照できますが、Smarty上で連想配列を参照する場合は、

$form.User.name

という形でキーにピリオドを付けた形で参照します。これは、Ethnaの使い
方というより、Smartyの使い方に関するものです。

ドキュメントにも追記しておきました。

http://ethna.jp/ethna-document-dev_guide-form-multiarray.html#r0639827

どうぞ宜しくお願い致します。

-- 
Yoshinari Takaoka
takaoka @ beatcraft.com


users メーリングリストの案内