【问题标题】:Laravel Auth user id in controller [duplicate]控制器中的 Laravel Auth 用户 ID
【发布时间】:2015-10-13 01:54:23
【问题描述】:

我正在使用 Laravel 样板。我正在尝试获取已登录用户的user_id。我收到以下错误:

找不到类“App\Http\Controllers\Frontend\Auth”

来电了

$user = Auth::user();

然后我尝试使用以下方法获取 id:

$user->id

我错过了什么?

【问题讨论】:

    标签: php laravel laravel-5


    【解决方案1】:

    你需要在控制器中使用 Auth 门面;

    在类定义之前添加这一行。

    use Auth;
    

    【讨论】:

      【解决方案2】:

      试试这个,

      auth()->user()->id;
      

      当你尝试使用$user = Auth::user(); 获取用户时,Laravel 会尝试从当前位置加载 Auth 类。在你的情况下,它是

      '应用\Http\Controllers\前端'

      所以 Laravel 正在 Frontend 目录中寻找 Auth 类,但它不在。这就是为什么你收到如下错误消息说未找到,

      '找不到类'App\Http\Controllers\Frontend\Auth''

      如果你使用use Auth; 方法,你必须在每个你要使用Auth 控制器的控制器中输入use Auth;

      您可以简单地将 Laravel 辅助函数用作 auth()->user(),而不是在每个控制器中输入 use Auth;

      从中您可以从数据库中获取任何值,例如:

      auth()->user()->id
      
      auth()->user()->f_name
      

      【讨论】:

      • 虽然此代码 sn-p 可能是解决方案,但 including an explanation 确实有助于提高您的帖子质量。请记住,您是在为将来的读者回答问题,而这些人可能不知道您提出代码建议的原因。
      【解决方案3】:

      在类定义之前添加以下行

      use Auth;
      

      使用以下代码获取您当前的用户 ID:

      $currentuserid = Auth::user()->id;
      

      【讨论】:

      • 难以置信的答案!谢谢!
      猜你喜欢
      • 2014-09-21
      • 2021-09-27
      • 2021-12-28
      • 1970-01-01
      • 2019-08-30
      • 2020-10-09
      • 2019-06-30
      • 2017-10-15
      • 2019-04-25
      相关资源
      最近更新 更多