上一篇讲了Laravel展示产品-CRUD之show,现在我们说一下Laravel编辑产品,涉及到编辑和更新,

  1,定义controller,update和create有点相似,我们复制一份过来修改。new item改为item::find

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

@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

  

最新文章

  1. 在Asp.Net中操作PDF – iTextSharp - 使用表格
  2. 使用tornado,我们可以做什么?
  3. Ajax 提交session实效跳转到完整的登陆页面
  4. C#中Abstract和Virtual
  5. 【转】最近搞Hadoop集群迁移踩的坑杂记
  6. iOS视图控制对象生命周期
  7. 遍历aspx页面中所有的指定控件
  8. MATLAB导入数据importdata功能
  9. 图书管理系统设置登录验证(cookies)
  10. PHP判断变量是否为空的几种方法小结
  11. poi控制简单的word
  12. fastjson与net.sf.json区别
  13. .NET 控件的认识。
  14. ES6快速入门(一)函数与作用域
  15. 【10.31校内测试】【组合数学】【记忆化搜索/DP】【多起点多终点二进制拆位Spfa】
  16. 虚拟机ubuntu磁盘扩容
  17. javascript DOM dindow.docunment对象
  18. PHP 可以获取客户端哪些访问信息
  19. p2p-如何拯救k8s镜像分发的阿喀琉斯之踵?
  20. Java应用一般架构

热门文章

  1. 一个表中的id有多个记录,把所有这个id的记录查出来,并显示共有多少条记录数
  2. Doker学习笔记之一:安装
  3. [转]获取app的内部储存路径
  4. SVM 核方法
  5. C - 取石子游戏
  6. Diagnostics: File file:/tmp/spark-***/__spark_libs__***.zip does not exist
  7. amcharts去除版权标志
  8. CentOS搭建内网NTP服务器
  9. .NET Core开发日志——配置
  10. html学习_表格、表单