提问者:小点点

Laravel-hasManyPass仅返回_id


我使用jenssegers的Laravel MongoDB包和雄辩的Laravel模型。

文章:

  • _id(ObjectID)

喂养:

  • id

用户:

  • id

hasManyThrough在User::class模型中可以通过一个用户获取所有文章。

public function articles()
{
    return $this->hasManyThrough(
        'App\Article',
        'App\Feed',
        'user_id', // Foreign key on feeds table...
        'feed_id', // Foreign key on articles table...
        '_id', // Local key on users table...
        'id' // Local key on feeds table...
    );
}

我只得到_id(ObjectID)与此查询:

$user = \App\Models\User::find(1);
dd($user->articles);

你能帮我查一下这个问题吗?


共1个答案

匿名用户

你可以试试这个

$user->articles()->find(1);

如果您想要第一条记录,并且如果您想要所有记录,您可以使用get()

另外,如果要放置约束,请使用where()而不是find()

$user->articles()->where('_id', 1)->first();