Разница между категорией продукта каталога индекса и категорией продукта каталога
Не мог бы кто-нибудь объяснить мне, в чем разница между индексами catalog_category_product и catalog_product_category?
Из бд я вижу, что catalog_category_product связан с таблицей catalog_category_product_index
, но я не нахожу, с какой таблицей связан catalog_product_categoryиндекс.
2 answers
Заглядывая глубоко в файлы ядра magento, вы замечаете, что catalog_product_category модель индекса - это Magento\Catalog\Model\Indexer\Product\Category
, которая расширяет Magento\Catalog\Model\Indexer\Category\Product
, то есть модель индекса catalog_category_product.
Оба из них $fullActionFactory
и $rowsActionFactory
сущности простираются от Magento\Catalog\Model\Indexer\Category\Product\AbstractAction
, который имеет
const MAIN_INDEX_TABLE = 'catalog_category_product_index';
Таким образом, мы можем сказать, что оба индексатора работают и сохраняют данные в одной таблице catalog_category_product_index
.
catalog_product_category
: "истинные" данные, сохраненные продуктом. Это категории, отмеченные в бэк-офисе при редактировании продукта.
catalog_product_category_index
: где продукт "действительно". Это означает, что если родительская категория имеет значение "is_anchor" в да, это означает, что в ней также есть категория "дети". Итак, "нормально" иметь оба этих стола.