I have the form as UserType
with field like this
->add('description')
->add('createdAt')
Now i want that if the Logged in user has Role (ROLE_SUPERADMIN)
then he can see extra fields like this
->add('description')
if($user.hasRole(ROLE_SUPERADMIN))
->add('createdAt')
Actually i have to do that for many fields . is there any way i can make some custom type so that if that type is there then only admin can see those like
->add('createdAt',"MyCustomType")
Pretty simple. Just make your custom form type a service, depending on the security context:
Then mark the class as a service, with the special tag
form.type
:In your controller, instead of doing
new UserType()
, grap the service from the container: