Laravel 拉威尔的关系似乎不起作用

Laravel 拉威尔的关系似乎不起作用,laravel,eloquent,relation,Laravel,Eloquent,Relation,我有一个新项目,想建立一些关系。然而,我似乎无法让它发挥作用 我有一个公司模型 public function owner() { $this->belongsTo('App\User', 'id', 'owner_id'); } public function owns() { return $this->hasMany('App\Company', 'owner_id', 'id'); } 然后是一个具有 public function owner() {

我有一个新项目,想建立一些关系。然而,我似乎无法让它发挥作用

我有一个公司模型

public function owner() 
{
    $this->belongsTo('App\User', 'id', 'owner_id');
}
public function owns()
{
    return $this->hasMany('App\Company', 'owner_id', 'id');
}
然后是一个具有

public function owner() 
{
    $this->belongsTo('App\User', 'id', 'owner_id');
}
public function owns()
{
    return $this->hasMany('App\Company', 'owner_id', 'id');
}
当我获取用户或公司对象时,关系不会显示。
我做错了什么?

尝试此操作以避免出现许多参数的问题

...
public function owner() 
{
    return $this->belongsTo('App\User', 'owner_id');
}
...

当您尝试访问
$some\u user->owns
时,输出是什么? 您可以使用
php artisan tinker
测试您的关系,然后您可以像下面这样查找您的一个用户:

$u=User::find(1)
$u->拥有


如果它返回一个数组,则关系正常。

对于belongs的关系映射,实际上不需要映射要开始映射的字段 只有那个

$this->belongsTo('App\User');
那就足够了

为了你的正义,我有很多正义

$this->hasMany('App\Company');

如果关系字段是user\u id

显示您的数据库结构或迁移公共函数所有者(){$this->belongsTo('App\user','owner\u id');}您缺少所有者关系的返回。@AlexHarris这实际上是问题所在。。。德普。。。谢谢如果你用它来回答,我就接受。