在上一篇文章里,介绍了使用orm进行新增、删除、展示、渲染页面;
上篇laravel5.7使用ORM映射数据库做CURD之新增,删除,查询操作:https://blog.youkuaiyun.com/weixin_42980713/article/details/86356881
这里把修改也给大家奉上,只是单表操作,后续会把ORM关联模型的使用也进行介绍,万变不离其宗,ORM映射就是对表的操作,掌握以后,对我们开发速度也会提高很多。
与上篇文章整理一下就是一篇完整的CURD了,不废话,上代码:
//修改
public function update(Request $request,$id)
{
if($request->isMethod('post'))
{
$list = request()-all();
//获取文件名字为img的所有x
$img = request()->file('file');
// print_r($img);die;
$img_name = $img->getClientOriginalName();//图片名称
$img_txt = $img->getClientOriginalExtension();//图片后缀
// print_r($img_txt);
$rand = rand(100000,999999);
$new_name = date('YmdHis').$rand.'.'.$img_txt;
$img->move('./uploads',$new_name);//将图片移动到public/uploads文件夹下
// 前台传来的值 用变量接收一下
$data = array(
'user'=>$result['user'],
'sex' =>$result['sex'],
'telphone'=>$result['telphone'],
'msg'=>$result['msg'],
'one_people'=>$result['vote'],
'imgs'=>$new_name
);
//执行
$info = Flight::where('id',$id)->update($data);
if($info){
return redirect('index');
}else{
return rediret('update');
}
}else{
//在这里toArray()函数是将对象转化为数组,也可以不转化
$vote = Vote::find($id)->toArray();
return view('vote.voteupdate',['vote'=>$vote]);
}
}