将数据显示为user_id

时间:2017-05-20 09:18:43

标签: php laravel

我使用我拥有的用户登录并且我想要的只是我的帐户只能看到我刚刚发送的数据。在这里,我发现了一个能够查看其他人数据的问题。

首先是模型数据

public function user()
{
// Each data is owned by only one user
return $this->belongsTo('App\User');
}

然后是模型用户

public function data()
{
// Each user will have a lot of data
return $this->hasMany('App\Data');
}

最后这是控制器

public function index()
{
  $show_data = Auth::user()->data();
  $show_data = Data::where('user_id', '=', $user->id)
                 ->paginate(10);
  $amount_of_data = Data::count();
  return view('data.index', compact('show_data', 'amount_of_data'));
}

2 个答案:

答案 0 :(得分:0)

编辑索引方法并尝试:

public function index()
{
    $show_data = auth()->user()->data()->paginate(10);
    $show_data_count = count(auth()->user()->data);

    return view('data.index', compact('show_data', 'show_data_count'));
}

答案 1 :(得分:0)

数据应用模型

public function data()
{
  // Each user will have a lot of data
  return $this->hasMany('App\Data','user_id');
} 

最终控制者

public function index()
{
    $show_data = Auth::user()->data()->paginate(10);
    $amount_of_data = count($show_data['data']);
    return view('data.index', compact('show_data', 'amount_of_data'));
}