1

YiiのActiveFormを使用して、画像アップロードフィールドを含む基本的な登録ページを作成しようとしています。しかし、私は問題にぶつかっています。次のコードを使用してフォームタグを作成しています。

$form=$this->beginWidget('CActiveForm', array(
                                'id'=>'activity_form', 
                                'enableAjaxValidation'=>true, 
                                'stateful'=>true, 
                                'enctype'=>'multipart/form-data'
                                ));

上記のコードは、Yiiで次のエラーメッセージを生成します。

プロパティ「CActiveForm.enctype」が定義されていません

私も試しました:

$form=$this->beginWidget('CActiveForm', array(
                                'id'=>'activity_form', 
                                'enableAjaxValidation'=>true, 
                                'stateful'=>true, 
                                array('enctype'=>'multipart/form-data')));

と同様:

$form=$this->beginWidget('CActiveForm', array(
                                'id'=>'activity_form', 
                                'enableAjaxValidation'=>true, 
                                'stateful'=>true), 
                                array('enctype'=>'multipart/form-data')));

しかし、これらはどちらも機能しません。

何が間違っている可能性があるかについてのアイデアはありますか?beginWidgetを使用して、ファイルアップロード機能を備えたマルチパートフォームを作成できますか?これのために私が従うべきフォーマットは何ですか?ドキュメントやフォーラムで答えが見つからないようです。

ありがとう!

4

1 に答える 1

18

どうでも。私はこれに対する解決策を見つけました。秘訣は、次のようにhtmlOptionsを使用することです。

$this->beginWidget('CActiveForm', array(
  'id'=>'activity_form', 
  'enableAjaxValidation'=>true, 
  'stateful'=>true, 
  'htmlOptions'=>array('enctype' => 'multipart/form-data')
));
于 2010-08-31T08:53:51.307 に答える