大家好 !
我正在为一个项目使用easyadmin,我有点困惑。我有一个角色为“ROLE_CUSTOMER”和“ROLE_REPAIRMAN”的用户实体。我可以根据他们的角色显示和添加用户:
实体.yaml:
easy_admin:
entities:
Customer:
label: 'Customer'
class: App\Entity\User
list:
dql_filter: "entity.roles LIKE '%%ROLE_CUSTOMER%%'"
form:
title: "Add Customer"
fields: &userFormFields
- { property: 'email' }
- { property: 'civility' }
- { property: 'lastname' }
- { property: 'firstname' }
- { property: 'phone' }
- { property: 'mobile' }
Repairman:
label: 'Repairman'
class: App\Entity\User
controller: App\Controller\Admin\RepairmanController
list:
dql_filter: "entity.roles LIKE '%%ROLE_REPAIRMAN%%'"
fields:
- id
- company
- email
- civility
- firstname
- lastname
- { property: 'isAdminGroup' }
form:
title: "Add Repairman"
fields:
- { property: 'email' }
- { property: 'civility' }
- { property: 'lastname' }
- { property: 'firstname' }
- { property: 'phone' }
- { property: 'mobile' }
- { property: 'company' }
- { property: 'vitrage' }
- { property: 'kbis' }
- { property: 'siret' }
- { property: 'isAdminGroup' }
菜单.yaml
easy_admin:
design:
menu:
- label: 'Clients'
icon: 'users'
entity: 'Customer'
children:
- { label: 'Show', entity: 'Customer', params: { action: 'list' } }
- { label: 'Add', entity: 'Customer', params: { action: 'new' } }
- label: 'Repairman'
icon: 'users'
entity: 'Repairman'
children:
- { label: 'Show', entity: 'Repairman', params: { action: 'list' } }
- { label: 'Add', entity: 'Repairman', params: { action: 'new' } }
当我点击添加客户时,我希望他的角色为 ROLE_CUSTOMER,当我点击添加修理工时,他的角色为 ROLE_REPAIRMAN
我试图扩展 AdminController、RepairmanController 但我无法得到我想要的。我还尝试使用以下方法设置默认值:
- { property: 'roles', type: 'hidden', type_options: { empty_data: "['ROLE_REPAIRMAN']" } }
在这里我有一个错误,因为他需要一个数组并且他将值解释为一个字符串。
有人可以帮我弄清楚吗?或者你有更好的解决方案吗?
谢谢 !