[英]Laravel 5.4 Update method and uploading files
I would like in the method update() to upload files to the server.我想在方法update()中将文件上传到服务器。
upload method:上传方法:
private function upload($request){
if($request->hasFile('image')){
$image = $request->file('image');
$extension = $request->file('image')->getClientOriginalExtension();
$generate_name = md5(uniqid(rand(), true));
$file_name = $generate_name . '.' . $extension;
$image->move(public_path() . '/post_image/', $file_name);
return $file_name;
}
}
update method:更新方法:
public function update(ArticleRequest $request, $id)
{
$article = Article::FindOrFail($id);
$file = $this->upload($request);
$article->image = $file;
$article->update($request->all());
Session::flash('message', 'Wpis został edytowany!');
return redirect('articles');
}
However, when I send the form error occurs.但是,当我发送表单时会发生错误。
enter image description here在此处输入图片说明
But the same code with the upload () method store works very well.但是同样的代码用upload() 方法store 效果很好。
public function store(ArticleRequest $request)
{
$article = new Article($request->all());
$file = $this->upload($request);
$article->image = $file;
Auth::user()->articles()->save($article);
Session::flash('message', 'Wpis został dodany!');
return redirect('articles');
}
Try to override the update method.尝试覆盖更新方法。 I've been through this, my solution was this.
我经历过这个,我的解决方案是这样的。 See if you solve your problem.
看看你是否解决了你的问题。
public function save(Request $request){
$data = $request->all();
if($request->hasFile('file')){
$image = $request->file('file');
$num = rand(1234,8976);
$dir ="img/courses/";
$ext = $image->getClientOriginalExtension();
$nameImage = "image".$num.".".$ext;
$image->move($dir,$nameImage);
$data['image'] = $dir."/".$nameImage;
}
YoutClass::create($dados);
return redirect()->route('ROUTE');
}
I've just got this issue and fixed it using Input::all
instead of $request
object, something like:我刚刚遇到了这个问题,并使用
Input::all
而不是$request
对象修复了它,例如:
$data = Input::all();
if(isset($data['image'])) {
... // Do your thing
}
It seems like there is any issue with the request
helper/class and the UploadedFile
when you make PUT
instead of pure POST
当您使用
PUT
而不是纯POST
时, request
助手/类和UploadedFile
似乎存在任何问题
Cheers!!...干杯!!...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.