@ johan-rm то, что вы сделали, было почти правильно.
Фактически, вы не можете использовать переключатели для ролей, потому что роли (см. s
) являются полями с несколькими вариантами выбора. Вам необходимо использовать флажки (или множественный выбор).
В вашем коде единственной ошибкой была эта часть: multiple: false
.
Если вы пытаетесь сопоставить массив с одним полем выбора, вы пытаетесь сопоставить массив со строкой, поэтому возникает ошибка.
Просто измените multiple: false
на multiple: true
.
Это результат:
easy_admin:
entities:
User:
class: AppBundle\Entity\User
form:
fields:
- { property: 'username' }
- { property: 'email' }
- { property: 'enabled' }
- property: 'plainPassword'
type: 'repeated'
type_options:
type: Symfony\Component\Form\Extension\Core\Type\PasswordType
required: false
first_options: { label: '%label.password%' }
second_options: { label: '%label.password_confirmation%' }
invalid_message: fos_user.password.mismatch
- property: 'roles'
type: 'choice'
type_options:
mapped: true
expanded: true
multiple: true
choices: { 'Conseiller': 'ROLE_USER', 'Administrateur': 'ROLE_ADMIN' }