【发布时间】:2015-10-09 03:57:21
【问题描述】:
我正在从两个类别和子类别的表中检索数据。
categories cat_id 在子类别表中包含作为外键。
这是我的类别模型代码:
class Category extends Model
{
protected $table = 'categories';
public function subcategories()
{
return $this->hasMany(Subcategory::class, 'categories_id');
}
}
这是我来自 SubCategory 模型的代码:
class Subcategory extends Model
{
protected $table = 'sub_categories';
public function category()
{
return $this->belongsTo(Category::class, 'categories_id');
}
这是我从控制器中检索数据的方式:
$treeView = Category::with(['subcategories'])->get();
这就是我的.blade.php 部分的样子:
@foreach($treeView as $category)
@if($category->has('subcategories'))
<li class="treeview">
<a href="#"><i class="fa fa-link"></i> <span>{{ $category->category_name }}</span>
<i class="fa fa-angle-left pull-right"></i></a>
<ul class="treeview-menu">
@foreach($category->subcategories as $subcategory)
<li class=""><a href="#">{{$subcategory->sub_category_name}}</a></li>
@endforeach
</ul>
</li>
@else
<li><a href="#"><i class="fa fa-link"></i> <span>{{ $category->category_name }}</span></a></li>
@endif
@endforeach
如上 html 结构:如果任何类别有子类别,我将构建一个树视图,否则显示没有树视图的类别。但是我在树视图中获得了所有有或没有子类别的类别.. 任何人都可以建议一种方法...
【问题讨论】:
标签: php mysql laravel eloquent laravel-5