2017-06-16 41 views
1

我有業務和位置表,他們有一對一的關係。一切工作正常,但他們的問題是我只找到1結果。laravel一對一檢索許多結果

但是,位置表中外鍵的business_id有大量結果。

我的業務表5-95有ID,這些都是我要回

所以在我的位置表我也business_id這是從5-95的記錄。

我該如何說服雄辯來檢索這些特定記錄?

在這一刻,我有:

function transportProfile() { 
    $type = 2; 
    $business = Business::where('type', $type)->get(); 
    $location = Business::find(3)->locations; 
    echo $location; 
    return view('userProfile', compact('business', 'location')); 
} 

所以要澄清的業務表有ID從5-95和位置表已經從5-95 business_id我想從這些2個表返回結果,這樣我就可以使用它在視圖

回答

1

使用eager loading

$businesses = Business::where('type', $type)->with('location')->get(); 

要顯示數據:

@foreach ($businesses as $business) 
    {{ $business->location->name }} 
@endforeach 
+0

嗨!你是一個*,我正在尋找這樣的東西,我從來沒有發現任何東西,所以在位置表我想輸出slu and和商業名稱,你可以做到這一點? –

+0

@PrzemekWojtas你可以做'{{$ business-> location-> slug}}'。另外,請嘗試執行'{{dd($ business)}}'這將顯示所有數據及其結構,以便您瞭解如何使用它。 –

+0

@foreach($ business as $ business_name) @endforeach –