【发布时间】:2017-03-13 07:57:55
【问题描述】:
我有两个表,类别和产品。每个类别都有 ID 和名称。每个产品都有 id、name 和 category id。现在我想在用户单击特定 category_id 时加载每个选项卡上的数据。因此相关产品将显示在每个类别选项卡上。我已经尝试过,但无法得到解决方案。
类别模型:
class Category extends Model
{
public function products()
{
return $this->hasMany('App\Product');
}
}
产品型号:
class Product extends Model
{
public function category()
{
return $this->belongsTo('App\Category');
}
}
这是我的控制器:
public function gettestItem() {
$categories = Category::with('products')->get();
return view('products', compact('categories'));
}
这里是视图:
<div class="container">
<div id="content">
<ul id="tabs" class="nav nav-tabs" data-tabs="tabs">
@foreach ($categories as $category)
<li><a href="#{{$category->id}}" data-toggle="tab" >{{$category->name}}</a></li>
@endforeach
</ul>
<div id="my-tab-content" class="tab-content">
@foreach($categories as $category)
@foreach($category->products as $product)
<div class="tab-pane " id="{{$category->id}}">
{{$product->name}}
</div>
@endforeach
@endforeach
</div>
</div>
</div>
路线如下:
Route::get('/testItem',[
'uses'=>'ItemController@gettestItem',
'as'=>'testItem'
]);
如果有人可以帮助我解决问题,我们将不胜感激。
【问题讨论】:
-
您可能需要考虑阅读 relations 以及如何使用 laravel Query Builder
标签: javascript php laravel-5 laravel-5.2