Akeneo: создайте новую группу вариантов с атрибутами

Я хочу создать новую группу вариантов в Akeneo с некоторыми фиксированными атрибутами, чтобы «симулировать» поведение семейства продуктов. К сожалению, я не знаю, как получить ProductTemplate с некоторыми атрибутами с пустыми значениями.

Когда я попробовал свой код ниже, я получаю сообщение об ошибке после открытия созданной группы вариантов в графическом интерфейсе Akeneo:

Error: Option "attributes" must only contains instances of "Pim\Bundle\CatalogBundle\Entity\Attribute", got "Pim\Bundle\EnrichBundle\Form\Type\AvailableAttributesType"

Мой код выглядит так:

    $groupType = $this->groupManager
        ->getGroupTypeRepository()
        ->findOneBy(['code' => 'VARIANT']);
    $group = $this->groupFactory->createGroup($groupType);
    $group->setCode('MY_VARIANT_GROUP');

    $attributes = array($this->attributeRepository->findOneByIdentifier('AXIS_ATTRIBUTE'));
    $group->setAxisAttributes($attributes);

    // ??? How can I create a new product value?
    $productValue1 = new ProductValue();
    $productValue1->setId('PREDEFINED_ATTRIBUTE1');
    $productValue1->setAttribute($this->attributeRepository->findOneByIdentifier('PREDEFINED_ATTRIBUTE1'));

    $productTemplate = new ProductTemplate();
    $productTemplate->setValuesData(array($productValue1));

    $group->setProductTemplate($productTemplate);
    $this->groupSaver->save($group);

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


Ответы (1)


Я советую вам использовать Pim\Bundle\CatalogBundle\Builder\ProductTemplateBuilder для создания и добавления атрибутов в шаблон продукта.

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

person Julien Sanchez    schedule 06.08.2015
comment
Спасибо за подсказку к ProductTemplateBuilder, теперь все работает. - person Sonson123; 06.08.2015