Sylius\Bundle\AttributeBundle\Form\Type\AttributeType::buildForm PHP Method

buildForm() public method

public buildForm ( Symfony\Component\Form\FormBuilderInterface $builder, array $options )
$builder Symfony\Component\Form\FormBuilderInterface
$options array
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder->addEventSubscriber(new AddCodeFormSubscriber())->add('translations', ResourceTranslationsType::class, ['entry_type' => $this->attributeTranslationType, 'label' => 'sylius.form.attribute.translations'])->add('type', AttributeTypeChoiceType::class, ['label' => 'sylius.form.attribute.type', 'disabled' => true]);
        $builder->addEventListener(FormEvents::PRE_SET_DATA, function (FormEvent $event) {
            $attribute = $event->getData();
            if (!$attribute instanceof AttributeInterface) {
                return;
            }
            if (!$this->formTypeRegistry->has($attribute->getType(), 'configuration')) {
                return;
            }
            $event->getForm()->add('configuration', $this->formTypeRegistry->get($attribute->getType(), 'configuration'), ['auto_initialize' => false, 'label' => 'sylius.form.attribute_type.configuration']);
        });
    }

Usage Example

Ejemplo n.º 1
0
 /**
  * {@inheritdoc}
  */
 public function buildForm(FormBuilderInterface $builder, array $options)
 {
     parent::buildForm($builder, $options);
     $builder->add('position', IntegerType::class, ['required' => false, 'label' => 'sylius.form.product_attribute.position', 'invalid_message' => 'sylius.product_attribute.invalid']);
 }
All Usage Examples Of Sylius\Bundle\AttributeBundle\Form\Type\AttributeType::buildForm