0
我試圖找回在laravel 5.3Laravel 5.3 - 的hasMany關係不加入聲明
使用的hasMany Symbol.php
public function comments() {
return $this->hasMany('App\Comment');
}
Comment.php
徵求意見工作的符號public function symbol() {
return $this->belongsTo('App\Symbol');
}
當我運行:
$symbols = Symbol::with('comments')->paginate(100);
我得到正確的輸出(列出所有符號與他們的意見)
@foreach ($symbols as $s)
{{ $s->name }}
@foreach ($s->comments as $c)
{{ $c->body }}
@endforeach
@endforeach
,但是當我添加一個連接到語句:
$symbols = Symbol::with('comments')
->join('ranks', 'symbols.id', '=', 'ranks.symbol_id')
->join('prices', 'symbols.id', '=', 'prices.symbol_id')
->paginate(100);
的foreach循環對每個符號都沒有評論。任何想法爲什麼連接會造成這種情況?
爲什麼不添加這些作爲關係? – Jerodev
「任何想法爲什麼連接會造成這種情況」 - 我想Symbol的'id'被等級或價格的id覆蓋。解決方案將取決於你想要做什麼。 –
我認爲這是錯誤的。當我添加一個選擇,只包含symbols.id它的工作。謝謝 – StackOverflower