0

Yii でシナリオをセットアップしようとしています。ファイルのアップロードに使用する File というモデルがあります。ここで、ディレクトリの作成に同じモデルを使用したいと考えています。ディレクトリにはファイル属性がないため、モデルのシナリオを次のように設定します。

public function rules()
{
  return array(
    array('file', 'file', 'types'=>'jpg, gif, png, jpeg, bmp', 'maxSize'=>1024 * 1024 * 10, 'tooLarge'=>'Bestand moet kleiner dan 10MB zijn.'),
    array('file', 'file', 'on'=>'makefolder', 'allowEmpty'=>true),
  );
}

コントローラーでシナリオをトリガーします$model = new File("makefolder");今でも、「ファイルを空白にすることはできません」というエラーが常に発生します。このページをドキュメントとして使用しました。

4

1 に答える 1

2

推測にすぎませんが(元のコードは私には問題ないように思われるため)、次を除くすべてのシナリオで最初のルールが有効になるように設定することができますmakefolder

public function rules()
{
  return array(
    array('file', 'file', 'types'=>'jpg, gif, png, jpeg, bmp', 'maxSize'=>1024 * 1024 * 10, 'tooLarge'=>'Bestand moet kleiner dan 10MB zijn.', 'except'=>'makefolder'),
    array('file', 'file', 'on'=>'makefolder', 'allowEmpty'=>true),
  );
}

これらのルールでは、エラーはまだここにありますか?

ただし、ファイルのアップロードとフォルダーの作成は同じではありません。2 つの異なるモデルを使用する必要があります。

于 2013-03-13T09:46:13.917 に答える