- 父视图
// auth()->user()可以获取当前用户信息
<a href="{{route('user.edit', auth()->user())}}" class="btn btn-danger my-2 my-sm-0 mr-2">修改</a>
public function edit(User $user)
{
return view('user.edit', compact('user'));
}
- 子视图
@extends('layouts.default')
@section('content')
<form action={{route('user.update', $user)}} method="post">
@csrf
{{-- 模拟put方法--}}
@method('PUT')
<div class="card">
<div class="card-body">
<div class="form-group">
<label for="">昵称</label>
<input type="text" class="form-control" name="name" value={{$user->name}}>
</div>
<div class="form-group">
<label for="">密码</label>
<input type="text" class="form-control" name="password">
</div>
<div class="form-group">
<label for="">确认密码</label>
<input type="text" class="form-control" name="password_confirmation">
</div>
</div>
<div class="card-footer text-muted">
<button type="submit" class="btn btn-success">修改</button>
</div>
</div>
</form>
@endsection
- 资源控制器的update方法(负责验证和更新)
public function update(Request $request, User $user)
{
$request->validate([
'name' => 'required|min:3',
'password' => 'nullable|min:5|confirmed'
]);
session()->flash('success', '修改成功');
// 数据更新
$user->name = $request->name;
if ($request->password) {
$user->password = bcrypt($request->password);
}
$user->save();
return redirect()->route('user.show', $user);
}
save和create方法都可以用于创建数据,但是save可以用来更新数据
Mush1 发布了14 篇原创文章 · 获赞 0 · 访问量 105 私信 关注版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。