【发布时间】:2017-09-01 09:58:02
【问题描述】:
我在 laravel 中有分类和子分类
namespace App;
use Illuminate\Database\Eloquent\Model;
class Category extends Model
{
protected $table = 'categories';
public function parent()
{
return $this->belongsTo('App\Category', 'parent_id');
}
public function children()
{
return $this->hasMany('App\Category', 'parent_id');
}
}
我可以添加一个属于已创建类别的新类别。像“测试->测试子类别”之类的东西,然后假设我将创建属于测试子类别的“测试子子类别”,如下所示:“测试->测试子类别->测试子类别" 在视图中,我想打印该类别的父母(如果有的话)。 我是这样做的:
@if($category->parent)
<td>{{ $category->parent->name }} <strong>-></strong> {{ $category->name }}</td>
@else
<td>{{ $category->name }}</td>
@endif
但这仅显示一个父类别(“测试的子类别 -> 测试的子子类别”)。我想向所有看起来像这样的父母展示:“测试->测试的子类别->测试的子子类别” 我该怎么做?
【问题讨论】:
-
对于这样的事情,我建议查看嵌套集。你可能会发现这个包很有用:github.com/lazychaser/laravel-nestedset