Akeneo: получить атрибуты из группы вариантов

Я хочу проверить, не изменились ли значения некоторых атрибутов после редактирования группы вариантов в Akeneo V. 1.3.

К сожалению, я немного запутался: есть ли способ перейти от Pim\Bundle\CatalogBundle\Entity\Group к значениям атрибутов? Есть ли другой лучший способ получить эти значения группы Variant, которая была отредактирована?

Я даже не могу узнать, в какой таблице хранятся значения атрибутов в MySQL (я только что нашел pim_catalog_product_value для значений product).


person Sonson123    schedule 30.07.2015    source источник


Ответы (1)


Да, в этой части не так просто копаться.

Значения группы вариантов хранятся не так, как значения продуктов.

Эти значения группы вариантов используются только для копирования в связанных продуктах и ​​хранятся в шаблоне продукта.

Из шаблона продукта вы можете получить значения, нормализованные в json, с помощью

$group->getProductTemplate()->getValuesData()`.

Вы можете взглянуть на ProductTemplateApplier и ProductTemplateUpdater, чтобы увидеть, как мы применяем значения группы вариантов к продуктам (формат json можно использовать почти напрямую с программой обновления продукта).

Когда мы редактируем группу вариантов, чтобы иметь возможность использовать ту же форму, что и для продукта, мы используем подписчика TransformProductTemplateValuesSubscriber.

Он денормализует значения json в объекты значений продукта с помощью

$this->denormalizer->denormalize($data->getValuesData(), 'ProductValue[]', 'json');`

Не стесняйтесь, если вам нужна дополнительная информация.

person nidup    schedule 30.07.2015