यहाँ मैंने इस समस्या से छुटकारा पाने के लिए क्या किया,
/app/config/security.yml में भूमिकाओं को नीचे के रूप में परिभाषित करें,
role_hierarchy:
ROLE_ADMIN: [ROLE_ADMIN]
ROLE_SUPER_ADMIN: [ROLE_SUPER_ADMIN, ROLE_ALLOWED_TO_SWITCH]
ROLE_TEACHER: [ROLE_TEACHER]
ROLE_STUDENT: [ROLE_STUDENT]
ROLE_PARENT: [ROLE_PARENT]
नियंत्रक में, निम्नलिखित कोड का उपयोग करके /app/config/security.yml से भूमिकाएं प्राप्त करें
$roles = $this->getParameter('security.role_hierarchy.roles');
और यह प्रारूप प्रकार में भूमिकाओं के लिए कोड है,
$roles = $this->getParent('security.role_hierarchy.roles');
और फिर फॉर्मटाइप में, (यहाँ यह बहु-चयन है)
->add('roles', ChoiceType::class, array(
'attr' => array('class' => 'form-control',
'style' => 'margin:5px 0;'),
'choices' =>
array
(
'ROLE_ADMIN' => array
(
'Yes' => 'ROLE_ADMIN',
),
'ROLE_TEACHER' => array
(
'Yes' => 'ROLE_TEACHER'
),
'ROLE_STUDENT' => array
(
'Yes' => 'ROLE_STUDENT'
),
'ROLE_PARENT' => array
(
'Yes' => 'ROLE_PARENT'
),
)
,
'multiple' => true,
'required' => true,
)
)
संपादित करें उपयोगकर्ता भूमिकाओं को /app/config/security.yml में निम्नानुसार परिभाषित किया जाना चाहिए
role_hierarchy:
ROLE_ADMIN: [ROLE_ADMIN]
ROLE_SUPER_ADMIN: [ROLE_SUPER_ADMIN, ROLE_ALLOWED_TO_SWITCH]
ROLE_TEACHER: [ROLE_TEACHER]
ROLE_STUDENT: [ROLE_STUDENT]
ROLE_PARENT: [ROLE_PARENT]