Yii2 UploadedFile :: getInstance()返回null

时间:2018-05-13 08:25:38

标签: yii2 yii2-advanced-app

发送表单后UploadedFile::getInstance($model, 'images')会返回null。我也试过了UploadedFile::getInstanceByName('images')。在$_POST数组中,images键为空,例如'images' => ['']。该文件存在于$_FILES数组中。

我的代码非常简单。我的观点:

<?php $form = ActiveForm::begin([
    'options' => [
        'class' => 'validation-wizard wizard-circle floating-labels',
        'enctype'=>'multipart/form-data'
    ],
]); ?>

<?= $form->field($model, 'images[]')->fileInput([
    'id' => 'image_0',
    'class' => 'dropify',
    'data-default-file' => ''
]) ?>

<?php ActiveForm::end() ?>

在我的模特中,我有:

public $images;
public function rules()
{
    return [
        ['images', 'each', 'rule' => ['file']],
    ];
}

1 个答案:

答案 0 :(得分:4)

如果您想访问一系列文件,则需要使用UploadedFile::getInstances()代替UploadedFile::getInstance()

$files = UploadedFile::getInstances($model, 'images');

处理多个文件的好例子可以在Uploading Multiple Files部分的指南中找到。