Получите количество продуктов в подкатегории, а также общее количество основной категории в подкатегориях.Php

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Получите количество продуктов в подкатегории, а также общее количество основной категории в подкатегориях.

Сообщение Anonymous »

Если в дочерней категории есть товары, я хочу посчитать все товары в родительской категории этой дочерней категории.
например:
  • Категория 1 (Общий продукт 10) // как я могу это получить
    • Категория 1.1 (Общий продукт 5)
    • Категория 1.2 (Всего продуктов 3)
    • Категория 1.3 (Всего продуктов) Продукт 2)
Код Json:< /p>
id: 291,
level: 1,
parent_id: null, //parent category
name: "Chemicals",
bn_name: null,
sector: "product",
slug: "Chemicals",
status: "active",
created_at: "2021-04-16T23:53:52.000000Z",
updated_at: "2021-04-16T23:53:52.000000Z",
**products_count: 0,**
total_items: 1,
sub_categories: [

id: 292,
level: 2,
parent_id: 291,
name: "Activated Carbon",
bn_name: null,
sector: "product",
slug: "Activated-Carbon",
status: "active",
created_at: "2021-04-16T23:53:52.000000Z",
updated_at: "2021-04-16T23:53:52.000000Z",
products_count: 0,
total_items: 0,
sub_categories: [ ]
},
{
id: 293,
level: 2,
parent_id: 291,
name: "Adhesives & Sealants",
bn_name: null,
sector: "product",
slug: "Adhesives-&-Sealants",
status: "active",
created_at: "2021-04-16T23:53:52.000000Z",
updated_at: "2021-04-16T23:53:52.000000Z",
products_count: 0,
total_items: 0,
sub_categories: [ ]
},
{
id: 294,
level: 2,
parent_id: 291,
name: "Agro Chemicals", //child category
bn_name: null,
sector: "product",
slug: "Agro-Chemicals",
status: "active",
created_at: "2021-04-16T23:53:52.000000Z",
updated_at: "2021-04-16T23:53:52.000000Z",
**products_count: 1,**
total_items: 1,
sub_categories: [ ]
}

Код контроллера:
return $categories = Category::rootCategories()->with('subCategories')->withCount('products')->orderBy('name', 'ASC')->get();

Модели категорий:
public static function rootCategories() {
return self::whereNull('parent_id')->where('status', 'active')->orderBy('name', 'ASC');
}

public static function productRootCategories() {
return self::whereNull('parent_id')->where(['status' => 'active', 'sector' => 'product'])->orderBy('name', 'asc');
}

public function subCategories() {
return $this->hasMany(self::class, 'parent_id')->where('status', 'active')->with('subCategories')->withCount('products')->orderBy('name', 'asc');
}


Подробнее здесь: https://stackoverflow.com/questions/671 ... e-main-cat
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»