Я хотел бы получить все его основные категории, если категория продукта является подкатегорией.
Я прочитал эту статью: Laravel получаю всех родителей категории .но я не смог адаптировать свой собственный проект
У меня есть одна таблица категорий в БД. - категория
И если категория является главной, его main_id = 0, а если подкатегория main_id - это родительский идентификатор.
Я должен получить такие категории, как этот sub-> parent-> parent .... Parent
Как я могу это сделать? Спасибо
Модель моей категории
class Category extends Model
{
protected $table = 'category';
protected $fillable = ['category_name', 'slug', 'main_id'];
public function index() {
return $this->belongsTo('App\SubCategory');
}
public function productt(){
return $this->belongsToMany('App\SubCategory','category_sub');
}
public static function getCategory($parent = 0, $string = '-1'){
$categories = Category::where('main_id', '=', $parent)->get();
$string = $string+1;
foreach($categories as $category){
echo "<option value='$category->id'>".str_repeat('-',
$string).$category->category_name."</option>";
Category::getCategory($category->id, $string);
}
}
public function parent()
{
return $this->belongsTo('App\Models\Category', 'main_id');
}
public function children()
{
return $this->hasMany('App\Models\Category', 'main_id');
}
}