2017-09-22 58 views
1

我使用jenssegers的Laravel MongoDB包和Eloquent Laravel Model。Laravel - hasManyThrough return only _id

文章:

  • _id(對象ID)
  • FEED_ID
  • 標題

提要:

  • ID
  • USER_ID

用戶:

  • ID

hasManyThrough在用戶::類模型由一個用戶來獲取所有文章。

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(對象ID):

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

你能幫我尋找這個問題?

回答

0

你可以試試這個

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

在地方的find()你可以使用first()如果你想第一個記錄,如果你希望所有的記錄,你可以使用get()

此外,如果你想要把約束使用where()而不是find()

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

我太只_id領域,而不是所有的FIEL ds ... –

+0

可以請你發佈你從這個查詢得到什麼SQL在這裏? –

+0

請upvote答案也謝謝:) –