Akeneo:从变体组获取属性
Akeneo: Get attributes from a Variant group
我想检查在 Akeneo V.1.3 中编辑 Variant 组后某些属性值是否发生了变化。
不幸的是,我有点迷茫:有没有办法从 Pim\Bundle\CatalogBundle\Entity\Group
获取属性值?是否有另一种更好的方法来获取已编辑的变体组的这些值?
我什至找不到 table 属性值存储在 MySQL 中(我刚刚找到 pim_catalog_product_value
用于 产品 值).
是的,深入到这部分并不容易。
变体组值的存储方式与产品值不同。
这些变体组值仅用于在相关产品中复制并存储在产品模板中。
从产品模板中,您可以使用
获取在 json 中规范化的值
$group->getProductTemplate()->getValuesData()`.
您可以查看 ProductTemplateApplier 和 ProductTemplateUpdater,了解我们如何在产品上应用变体组值(json 格式几乎可以直接用于产品更新程序)。
当我们编辑变体组时,为了能够使用与产品相同的表格,我们使用订阅者 TransformProductTemplateValuesSubscriber
。
它将 json 值非规范化为具有
的产品值对象
$this->denormalizer->denormalize($data->getValuesData(), 'ProductValue[]', 'json');`
如果您需要任何进一步的信息,请不要犹豫。
我想检查在 Akeneo V.1.3 中编辑 Variant 组后某些属性值是否发生了变化。
不幸的是,我有点迷茫:有没有办法从 Pim\Bundle\CatalogBundle\Entity\Group
获取属性值?是否有另一种更好的方法来获取已编辑的变体组的这些值?
我什至找不到 table 属性值存储在 MySQL 中(我刚刚找到 pim_catalog_product_value
用于 产品 值).
是的,深入到这部分并不容易。
变体组值的存储方式与产品值不同。
这些变体组值仅用于在相关产品中复制并存储在产品模板中。
从产品模板中,您可以使用
获取在 json 中规范化的值$group->getProductTemplate()->getValuesData()`.
您可以查看 ProductTemplateApplier 和 ProductTemplateUpdater,了解我们如何在产品上应用变体组值(json 格式几乎可以直接用于产品更新程序)。
当我们编辑变体组时,为了能够使用与产品相同的表格,我们使用订阅者 TransformProductTemplateValuesSubscriber
。
它将 json 值非规范化为具有
的产品值对象$this->denormalizer->denormalize($data->getValuesData(), 'ProductValue[]', 'json');`
如果您需要任何进一步的信息,请不要犹豫。