扩展SonataProject?自定义ROLES的表单字段或不同表单。 Symfony 2 + FOSUserBundle + SonataUserBundle

时间:2011-12-14 13:54:14

标签: symfony

我有问题。我已经安装好了 进入我的Symfony 2 FOS用户软件包和Sonata用户软件包以及所有依赖项。

配置已完成,我可以管理我的用户和角色。

但是,我将创建其他表单以在我的面板中添加/编辑用户 为了不同的角色。我怎么能这样做?

为每个角色创建多个表单并在Sonata \ AdminBundle \ Controller \ CRUDController中进行检查?

在创建时删除/添加表单中的字段?

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

您也可以做类似

的事情
  1. 扩展普通的crud控制器,
  2. 将您要使用的控制器的名称更改为您的服务(不是sonata_crud,而是您在之前步骤中创建的控制器)
  3. 在新控制器中为newSpecialRoleAction和createSpecialRoleAction创建一个动作,其代码及其相应的视图
  4. ...从我记忆中

答案 1 :(得分:0)

我这样解决了..

来自Sonata Bundle的base_edit.html.twig我有 if语句,检查我,该用户具有适当的角色 以表格形式显示具体领域。

这是“硬编码”,但我没有发明任何其他内容。

还有其他想法吗?