在Silex中使用2个表单(用户/ admin)和表单类型

时间:2016-08-05 13:20:24

标签: php forms symfony silex

我是Silex的新人。 我使用this脚本。

我添加了一个新字段" status"在评论表中,以验证管理员的评论。

this脚本中,我们有一个用于评论的表单类型。

我想修改此文件,如果它是一个简单的用户则显示textarea,如果它是管理员,则显示textarea + choice字段以更改评论的状态。

我无法使用role_admin检查:

if ($app['security.authorization_checker']->isGranted('ROLE_ADMIN')) 

您如何建议,根据ROLE用户显示不同的表单?

1 个答案:

答案 0 :(得分:0)

你有一些选择。

  1. 您可以在formtype中传递容器。 $ app是DI容器,所以当你在课堂上传递它时,你只能访问它。

  2. 创建第二种类型,扩展您的表单类型或仅创建复选框。在您的控制器中,您应该访问$ app然后进行选择。