Laravel 5 - 如何在控制器中获取Auth用户ID,检索用户数据并在视图中显示该数据

时间:2015-06-17 19:32:46

标签: php laravel-5

Laravel 5框架(和OOP)的新手,我想创建一个视图,用户可以在登录时查看/编辑自己的用户个人资料。

在控制器中获取Auth用户ID,检索用户数据(从DB)并在配置文件视图中显示该数据的语法是什么。

我尝试了以下方法,但没有效果。

控制器:

/**
 * Show the application user profile to the user.
 *
 * @return Response
 */
public function profile()
{

    $users = User::find(Auth::user()->id);

    return view('profile')->with(['users' => $users]);
}

个人资料视图:

<div class="row">
    <div class="col-md-10 col-md-offset-1">
        <div class="panel panel-default">
            <div class="panel-heading">Profil</div>

            <div class="panel-body">
                Your user id is: {{ Auth::user()->id }}.

    <table>
@foreach($users as $user)
    <tr>
        <td>{{ $user->first_name }}</td>
        <td>{{ $user->last_name }}</td>

    </tr>
@endforeach
    </table>



            </div>
        </div>
    </div>
</div>

感谢。任何帮助将不胜感激

1 个答案:

答案 0 :(得分:6)

您尝试显示用户,但您只有一个用户(登录的用户)。你也可以通过使用Auth facade来简化它,而不是通过其他数据库调用来获得同一个用户。

控制器:

public function profile()
{
    $user = Auth::user();
    return view('profile')->with(['user' => $user]);
}

查看:

<div class="panel-body">
    Your user id is: {{ $user->id }}
    Your first name is: {{ $user->first_name }}
    Your last name is: {{ $user->last_name }}
</div>