尝试调用名为类 "EntidadesBundleEntityRoles" 的 "getQuery" 的未定义方法



我得到了这个:

public function getRolByIdAction(Request $request)
    {
        try{
            $inicio = $this->get("app.Ensession");  
            if($inicio->logeado($this) === true && $inicio->ver_rol("sistemas") && $request->getMethod() == "POST"){
                $filtro_busqueda = $request->get("filtro")["filtro"];
                $roles = $this->getDoctrine()->getRepository('EntidadesBundle:Roles')->find($filtro_busqueda);
                if($roles){
                    $response = new JsonResponse(
                        array(
                            'error' => false, 
                            'data' => ***$roles->getQuery()->getArrayResult()***
                        )
                    );
                }else{
                    new ErrorException(ErrorException::CONSULTA_SIN_RESULTADOS);
                }
            }else{
                return $inicio->logeado($this);
            }
            return $response;
        } catch (Exception $e) {
            $response = new JsonResponse(
                array(
                    'error' => true, 
                    'mensaje' => "Error " . $e->getCode() . " -> " . $e->getMessage()
                    )
                );
            return $response;
        }
    }

问题是我不知道我该怎么做才能发送我找到的$roles

我发了那个

开机自检参数键值菲尔特罗

[▼"filtro" => "1"]

我可以从查找查询原则返回 JSON 模型吗?,适用于 Symfony3,并且我的实体/角色中没有 @ORM/Id.php

在调用 doctrine find 方法后,您不能使用 getQuery()。此方法应返回 ArrayCollection。

要序列化你的角色集合,你可以使用像 https://github.com/schmittjoh/JMSSerializerBundle 这样的捆绑包,或者使用本机symfony序列化程序 https://symfony.com/doc/current/components/serializer.html。

相关内容

  • 没有找到相关文章

最新更新