Laravel - 从URI获取参数并根据该参数接收数据库信息

时间:2016-12-11 13:46:34

标签: database laravel parameters

我正在使用laravel,我需要从URL获取用户名,然后根据数据库获取信息,我不知道如何实现这一点。有人可以帮助我吗?

Route::get('/profile/{username}', 'ProfileController@show');

我不知道如何在控制器中调用它并在视图中发送它,然后如何在视图中调用它。

public function show($username)
{
  User::where('username', $username)->get();
  return view('profile/index', ['username' => $username]);
}

如何在视图中显示该行的内容?

谢谢!

2 个答案:

答案 0 :(得分:1)

您应该阅读controllersroutes。您的控制器应如下所示:

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(),表格中有usernamename个字段与用户模态相关联。

以上代码经过测试并在Laravel 5.2上运行。以及上述假设。

希望它对你有所帮助。