如何仅在laravel中获取当前用户数据

时间:2018-12-10 16:19:54

标签: laravel

我正在laravel上工作,只想获取登录用户数据,但是当我更改代码时,它在我的视图中给出了错误

public function index(){
        $users = User::all();//Auth::user();//
        //dd($users);
        return view ('profile.index',compact('users'));
    }

这是提供输出并显示所有用户数据的代码  当我更改代码错误时,它没有输出 this is image

这是我正在使用的视图

<div class="container">
    <div class="row">
     <div class="container" >
  <h2>Basic Details<h2>
  <form>
    @foreach($users as $user)
<image  src=" {{$user['image']}}" class="img-circle">
    <div class="form-group col-lg-3">
      <span class="input-group-addon"><i class="glyphicon glyphicon-user"></i></span>
      <h4>Name:</h4>
      <input type="text" value="{{$user['name']}}" class="form-control" id="text" name="text" 
      readonly="true">
    </div>
    <div class="form-group col-lg-3">
      <h4 for="Email">Email:</h4>
      <input type="email" value="{{$user['email']}}" class="form-control" id="email" name="email" 
      readonly="true">
    </div>
     @endforeach
  </form>

1 个答案:

答案 0 :(得分:0)

您的代码存在多个问题,正如@pseudoanime所评论的那样,由于返回的数据类型,您不能直接将单个用户案例与所有用户互换。但是,如果您确实要执行此操作,则可以进行更改,以使两种情况都返回一个集合,如下所示:

    model.CategoryList = await db.ArticleCategoryTranslations
        .Where(x => x.LangId == lang.Id && 
        x.ArticleCategory.IsActive == true && 
        x.ArticleCategory.IsDelete == false)
        .Select(x => new ddl { Id = x.RecordId.Value, Name = x.Title }).ToListAsync();

我不确定您为什么要这样做,而不是简单地返回不同的视图,但是我将由您自己决定。请注意,我建议您重新评估您的问题并采用其他方法,因为循环浏览您只有一个成员的集合是没有意义的。

此外,您应该注意,您没有正确访问用户模型。应该使用对象语法($ user-> email)时,在视图中使用数组语法(例如$ user ['email'])。代码中还有其他问题可能仍然会引起问题,但这是我所看到的最明显的问题。