【发布时间】:2018-10-01 17:01:24
【问题描述】:
我有桌子:
用户
- 身份证
- 姓名
公司
- 身份证
- 姓名
公司用户
- company_id
- user_id
表格具有多对多关系。
由于这对我来说很复杂,当用户可以看到由该用户创建的公司时,我无法找到如何进行此限制的方法。 (可能经验不足)
现在我有了这个,但用户可以看到任何公司
公司控制器:
public function show($company_id)
{
$company = Company::where('id', $company_id)->firstOrFail();
return view('company.settings', compact('company'));
}
所以请提示我如何让用户只能看到该用户创建的公司。
【问题讨论】:
-
您是否在
User模型上定义了belongsToMany 关系? -
公共函数公司() { return $this->belongsToMany(Company::class, 'company_user'); }
-
还有。 public function users() { return $this->belongsToMany(User::class, 'company_user'); }
-
我的错,您需要在
Company模型上使用它,您也有吗?另外你是什么意思“这个用户”?当前登录用户? -
实际上关系有效,这不是我的问题
标签: laravel eloquent many-to-many pivot relationships