【发布时间】:2016-06-02 08:22:18
【问题描述】:
我在从我的关系中获取数据时遇到了一些问题。我需要一些域的标签。
$domains = Domains::where('customer_id', Auth::user()->customers_id)->get();
有我需要的所有域。在我的 Domains 模型上,我与数据透视表有这个 belongsToMany 关系。
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发送到您的刀片服务器,然后为每个域显示相关标签?@foreach($domains as $domain) $domain->tags @endforeach -
因为我得到了这个:未定义的属性:Illuminate\Database\Eloquent\Collection::$tags
-
向我们展示您的控制器代码。
-
我已经用我的控制器代码更新了我的问题
-
我已经更新了我的答案。希望对您有所帮助。
标签: laravel pivot has-and-belongs-to-many