我有三个模型:产品、类别、产品类别。一个产品可能有很多类别,有些类别可能有一个父类别。您可以在下面找到相关关系。我可以用foreach()循环显示所有类别,但我不想这样做。我只想显示类别,它必须是最新的。有没有办法只显示当前产品的父类别的最后一个类别?
<div class="row">
@foreach ($products as $product)
@foreach ($product->categories as $cat)
{{ $cat->title }}
@endforeach
@endforeach
</div>
产品型号
public function categories()
{
return $this->belongsToMany(Category::class);
}
品类模型
public function products()
{
return $this->belongsToMany(Product::class);
}
public function subcategories()
{
return $this->hasMany('\App\Category', 'parent_id');
}
public function parent()
{
return $this->belongsTo('\App\Category', 'parent_id');
}
类别架构
$table->increments('id');
$table->string('title');
$table->integer('parent_id')->nullable();
类别_产品架构
$table->increments('id');
$table->integer('category_id')->unsigned();
$table->integer('product_id')->unsigned();
森栏
倚天杖
富国沪深