错误yii2 upload在null上调用成员函数saveAs()

时间:2017-08-27 07:17:49

标签: php yii yii2

我是新的程序员世界,并请求你的帮助, 我有错误"在null"

上调用成员函数saveAs()

此代码在模型中

[['file'],'file'],
  • 控制器中的这段代码

                $docfileload = $model->docname;
            $model->file = UploadedFile::getinstance($model,'file');
            $model->file->saveAs('uploads/'.$docfileload.'.'.$model->file->extension);
            $model->save();
    
            //save path in db
            $model->docfile = 'uploads/'.$docfileload.'.'.$model->file->extension;
    

_form

中的这段代码
    <?= $form->field($model,'file')->fileinput(); ?>

在我使用getInstanceByName之后,像@bluehipy告诉我,我有一个新的问题看看图片

enter image description here

2 个答案:

答案 0 :(得分:0)

UploadedFile::getinstance会返回array个文件。使用getInstanceByNameUploadedFile::getinstance($model, 'file')[0]

答案 1 :(得分:0)

试试这个:

    $model->file=UploadedFile::getInstance($model,'file');  
    $model->pic=$model->file->extension; // pic is a field in database varchar(20)  
    $model->save(false) ;

    $ImageName=$model->id;
    if (!file_exists('uploads/'.$ImageName)) {
    mkdir('uploads/'.$ImageName, 0777, true);
        }   
    $model->file->saveAs( 'uploads/'.$ImageName.'/'.$ImageName.'.'.$model-
    >file->extension );

`