![](/img/trans.png)
[英]Return all data from hierarchical belongsToMany relationship Laravel 5.3
[英]Retrieving data from belongsToMany relationship in Laravel
從我的關系中獲取數據時遇到一些問題。 我需要某些域的標簽。
$domains = Domains::where('customer_id', Auth::user()->customers_id)->get();
有我需要的所有領域。 在我的Domains模型上,我的數據透視表具有這個EmiratesToMany關系。
public function tags() {
return $this->belongsToMany('App\Models\Tags_Domains', 'domain_tag', 'domains_id', 'tags_id');
}
我能夠從我的關系中獲得所有數據:
dd($domains[0]->tags);
這給了我所有我想要的數據,但僅用於第一個域。 但是我希望每個域都可以將此新數組傳遞給我的Blade模板。 我嘗試了很多方法,但是無法正常工作。 ($ collection錯誤,試圖正確獲取非對象...)
有人可以幫我嗎?
控制器代碼:
$domains = Domains::where('customer_id', Auth::user()->customers_id)->get();
return view('defaultLayout.domains.tagsdelete', [
'domains' => $domains
]);
這是因為您使用$ domains [0]並獲得了第一個域。 您必須遍歷它們:
foreach($domains as $domain) {
foreach($domain->tags as $tag) {
var_dump($tag);
}
}
編輯:如果您需要視圖中的標簽,請按以下步驟操作:
@foreach($domains as $domain)
<p>{{ $domain->name }}</p> //where name could be any field that $domain has
@foreach($domain->tags as $tag)
<p>{{ $tag->name }}</p> //where name could be any field that $tag has
@endforeach
@endforeach
很高興我幫了大忙:)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.