如何解决如何使用yii将上传的文件名添加到数据库中
我想用 yii 上传文件,我做到了。当我点击提交按钮时,文件被保存在它应该在的文件夹中。但是,我也想将文件名添加到数据库中。我怎样才能做到这一点?
这是我的控制器:
public function actionUpload()
{
$model = new TourImage();
if (Yii::$app->request->isPost) {
$model->imageFile = UploadedFile::getInstance($model,‘imageFile’);
if ($model->upload()) {
// file is uploaded successfully
return;
}
}
return $this->render(‘upload’,[
‘model’ => $model
]);
}
解决方法
您可以从 UploadedFile.getInstance() 中提取原始文件的名称并将其分配给您的模型的属性(这通常在您的模型“TourImage”中完成,在上传方法中您必须实施)。
因此,如果您在控制器操作中有此功能:
$model->imageFile = UploadedFile::getInstance($model,'imageFile');
然后,在 TourImage 模型的 upload() 方法中:
$this->your_model_attribute = $this->imageFile->name; // The original name of the file being uploaded
将your_model_attributes更改为要保存文件名的模型的属性。
查看 UploadedFile 对象的公共属性: https://www.yiiframework.com/doc/api/2.0/yii-web-uploadedfile
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。