【问题标题】:Use 2 forms (user/admin) with Form Type in Silex在 Silex 中使用 2 个表单(用户/管理员)和表单类型
【发布时间】:2016-08-05 13:20:23
【问题描述】:

我是 Silex 的新手。 我正在使用this 脚本。

我在评论表中添加了一个新字段“状态”来验证管理员的评论。

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

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

我不能使用 role_admin 检查:

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

您如何建议,根据角色用户简单地显示不同的形式?

【问题讨论】:

    标签: php forms symfony silex


    【解决方案1】:

    你有一些选择。

    1. 您可以在表单类型中传递容器。 $app 是 DI 容器,所以只有在你的类中传递它时才能访问它。

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

    【讨论】:

    • 感谢您的回答。我会查一下。我知道我可以添加更多的表单类型,但我不想为将来可以添加的所有特定表单添加 50 个表单类型。也许第一个选项更优化。
    猜你喜欢
    • 1970-01-01
    • 2014-04-05
    • 2010-11-01
    • 2017-06-28
    • 1970-01-01
    • 2021-03-05
    • 1970-01-01
    • 2016-07-25
    • 1970-01-01
    相关资源
    最近更新 更多