我正在使用laravel,我需要从URL获取用户名,然后根据数据库获取信息,我不知道如何实现这一点。有人可以帮助我吗?
Route::get('/profile/{username}', 'ProfileController@show');
我不知道如何在控制器中调用它并在视图中发送它,然后如何在视图中调用它。
public function show($username)
{
User::where('username', $username)->get();
return view('profile/index', ['username' => $username]);
}
如何在视图中显示该行的内容?
谢谢!
答案 0 :(得分:1)
您应该阅读controllers和routes。您的控制器应如下所示:
public function show($username)
{
User::where('name', $usename)->get();
此处$username
变量将包含URI中的{username}
部分。
答案 1 :(得分:1)
要显示该用户的数据,请尝试使用以下代码。
项目名称/应用/ HTTP / routes.php文件
Route::get('/profile/{username}', 'ProfileController@show');
项目名称/应用/ HTTP /控制器/ ProfileController.php
public function show($username)
{
$user_data = User::where('username', $username)->first();
return view('profile.index', ['username' => $username, 'user_data' => $user_data]);
}
项目名称/资源/视图/简档/ index.blade.php
<div class="container">
<div class="row">
<ul>
<li>Username: {{ $username }}</li>
<li>Name: {{ $user_data->name }}</li>
</ul>
</div>
</div>
请注意:我认为username
是唯一的;所以我使用了first()
,表格中有username
,name
个字段与用户模态相关联。
以上代码经过测试并在Laravel 5.2上运行。以及上述假设。
希望它对你有所帮助。