【发布时间】:2021-10-02 09:41:59
【问题描述】:
我有以下结构:
**users**
id, company_id
**companies**
id, country_id
**countries**
id, name
现在我想让用户像这样使用公司和国家:
User::with('country')->get();
所以我已将关系添加到我的用户模型中:
public function country() {
return $this->hasOneThrough(Country::class, Company::class);
}
但是,Eloquent 正在公司列中查找 user_id 列,而不是 users 表中的 company_id 列:
select `countries`.*, `companies`.`user_id` as `laravel_through_key`
from `countries`
inner join `companies` on `companies`.`id` = `countries`.`company_id`
【问题讨论】:
标签: laravel eloquent foreign-keys relationship