Does not pull up selected options in the form.
Piece of FormType
->add('categories', ChoiceType::class, [ 'choices' => $this->getCategoryTree(), 'multiple' => true, 'placeholder' => 'ΠΠΎΡΠ½Π΅Π²Π°Ρ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΡ', 'choice_label' => function(Category $category) { return $category->getName(); }, 'choice_attr' => function(Category $category) { return ['style' => 'padding-left:' . 15 * ($category->getStep()+1) .'px;' ]; }, 'label' => 'ΠΡΠΈΠ²ΡΠ·ΠΊΠ° ΠΊ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ', 'attr' => [ 'size' => 15 ], 'required' => false ])
Piece DataTransformer
public function transform($categories) { if (null === $categories) { return ''; } foreach ($categories as $category) { $ids[] = $category->getId(); } return $ids; }
display of the form in templates
<div class="row"> <div class="col-xs-12"> {{ form_start(form) }} <div class="row"> <div class="col-xs-12"> {{ form_row(form.name) }} </div> </div> <div class="row"> <div class="col-xs-6"> {{ form_row(form.parent) }} </div> <div class="col-xs-6"> {{ form_row(form.categories) }} </div> </div> <div class="row text-right"> <div class="col-xs-12"> {% if form.vars.value.parent is not empty %} {% set parentCategory = form.vars.value.parent.id %}{% else %}{% set parentCategory = null %}{% endif %} <a href="{{ path('user_external_service_category_tree', { 'id' : app.request.attributes.get('id'), 'category': parentCategory }) }}" class="btn btn-default">ΠΡΠΌΠ΅Π½Π°</a> {{ form_widget(form.save) }} </div> </div> {{ form_end(form) }} </div> </div>
How to implement?