Laravel编辑产品-CRUD之edit和update
上一篇讲了Laravel展示产品-CRUD之show,现在我们说一下Laravel编辑产品,涉及到编辑和更新,
1,定义controller,update和create有点相似,我们复制一份过来修改。new item改为item::find
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | public function edit($ id ) { // $item = Item:: find ($ id ); return view( 'items.edit' )->with( 'item' , $item); } public function update(Request $request, $ id ) { $validatedData = $request->validate([ 'name' => 'required|max:255' , 'price' => 'required|numeric' , 'img' => 'required|max:255' , 'description' => 'required|max:255' , ]); // 检查输入是否合法 $item = Item:: find ($ id ); $item->name = $request->name; $item->price = $request->price; $item->img = $request->img; $item->description = $request->description; $item->save(); } |
2,编辑edit.blade.php,文件在/resources/views/items/edit.blade.php,添加如下代码,注意method是PUT
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | @extends( 'layouts.app' ) @ if ($errors->any()) <div class= "alert alert-danger" > <strong>Errors:< /strong > <ul> @foreach ($errors->all() as $error) <li>{{ $error }}< /li > @endforeach < /ul > < /div > @endif @section( 'content' ) <div class= "container" > <div class= "row" > <div class= "col-md-8 col-md-offset-2" > <div class= "card card-default" > <div class= "card-header" >Edit Item< /div > <div class= "card-body" > <form method= "POST" action= "{{route('items.update', $item->id)}}" aria-label= "Register" > @csrf <input type = "hidden" name= "_method" value= "PUT" > <div class= "form-group row" > <label for = "name" class= "col-md-4 col-form-label text-md-right" >Name< /label > <div class= "col-md-6" > <input id = "name" type = "text" name= "name" value= "{{ $item->name }}" required= "required" autofocus= "autofocus" class= "form-control" > < /div > < /div > <div class= "form-group row" > <label for = "email" class= "col-md-4 col-form-label text-md-right" >Price< /label > <div class= "col-md-6" > <input id = "email" type = "text" name= "price" value= "{{ $item->price }}" required= "required" class= "form-control" > < /div > < /div > <div class= "form-group row" > <label for = "password" class= "col-md-4 col-form-label text-md-right" >Img< /label > <div class= "col-md-6" > <input id = "password" type = "text" name= "img" class= "form-control" value= "{{ $item->img }}" > < /div > < /div > <div class= "form-group row" > <label for = "password-confirm" class= "col-md-4 col-form-label text-md-right" >Description< /label > <div class= "col-md-6" > <input id = "password-confirm" type = "text" name= "description" required= "required" class= "form-control" value= "{{ $item->description }}" > < /div > < /div > <div class= "form-group row mb-0" > <div class= "col-md-6 offset-md-4" > <button type = "submit" class= "btn btn-primary" >Save< /button > < /div > < /div > < /form > < /div > < /div > < /div > < /div > < /div > @endsection |

加微信交流
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
2014-07-10 帝国cms调用随机文章 支持一个id段内的调用
2014-07-10 修改dedecms面包屑导航的首页链接关键字