提问人:Timothy 提问时间:6/7/2022 最后编辑:James ZTimothy 更新时间:11/2/2022 访问量:1981
laravel blade 文件中未定义的变量
Undefined variable in laravel blade file
问:
我是laravel的新手,请帮助我解决这个错误。
这是我的控制器功能“编辑”
public function edit($id)
{
$user = User::find($id);
return view('users.edit-profile',['user'=>$user]);
}
这是我的观点 users.edit-profile
<div class=" mb-4" style="border: 1px solid #979797; border-radius: 4px;width: 360px;height: 40px;margin-left: 200px;" >
<input type="text" name="name" id="name" onkeyup="isEmpty()" value="{{$user->name}}" class="form-control" >
</div>
这是路线
Route::get('/edit_profile',[profileController::class,'index']);
Route::get('/edit_profile/{id}',[profileController::class,'edit'])->name('edit_profile');
这是错误
Undefined variable: user (View: C:\xampppp\htdocs\clipboard_nation\resources\views\users\edit-profile.blade.php)
此错误显示未定义我在刀片文件中使用的$user变量。
答:
0赞
Natvarsinh Parmar - bapu
6/7/2022
#1
试试这个
public function edit($id)
{
$user = User::findOrFail($id);
return view('users.edit-profile', compact('user'));
}
0赞
MaggsWeb
6/7/2022
#2
由于刀片文件不存在$user因此在刀片文件中引发错误。
一个选项是防止该错误直接在边栏选项卡文件中发生,方法是在变量不存在时提供默认值。
<input type="text" name="name" id="name" value="{{$user ? $user->name : ''}}" >
0赞
Hamza Shiwani
6/7/2022
#3
试试这个
public function edit($id) {
$data['user']= User::findOrFail($id);
return view('users.edit-profile', $data);
}
评论
0赞
Tyler2P
6/8/2022
通过添加有关代码的作用以及它如何帮助 OP 的更多信息,可以改进您的答案。
0赞
Pepe F.
11/2/2022
#4
我也有类似的问题,也尝试将用户数据添加到索引方法中
$user = User::find($id);
return view('users.edit-profile',['user'=>$user]);
评论