【问题标题】:Symfony automatic filling a field of my form by a value from database [closed]Symfony用数据库中的值自动填充我的表单字段[关闭]
【发布时间】:2021-08-04 01:47:58
【问题描述】:

我正在为我的网站使用框架 symfony 5,并且我已经实现了一个正常的身份验证系统。我有 2 个实体(用户和患者),当我通过表单输入新患者时,此表单的字段必须由已登录并正在添加的用户的 ID 自动填写(且未显示) .谁能帮帮我?

我必须填写的实体字段是这个:

我在控制器中的动作是这个:

【问题讨论】:

    标签: php html database symfony web


    【解决方案1】:

    无需将用户 ID 放入输入并从客户端获取。 不用说,有经验的用户可以修改 id(隐藏输入不是解决方案)。

    在您的控制器中,您可以通过使用$this-getUser() 方法或注入Symfony\Component\Security\Core\Security 组件(如果您的控制器未扩展抽象控制器)来获取当前经过身份验证的用户。 https://symfony.com/doc/current/security.html#a-fetching-the-user-object

    public function new_paziente(Request $request): Response
    {
        $paziente = new Paziente();
        $user = $this-getUser();
        $paziente->setResponsabile($user);
        // remaining code unchanged 
        // do not forget to remove the 'responsabile' input from PazienteType and the twig
    } 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多