Как отобразить и использовать вид БД из Doctrine2

У меня есть вид на nomencladores схема называется obtenerPaisesPorFabricanteProductoSolicitud, Это содержание для просмотра:

SELECT
ps.id AS psid,
ps.nombre,
fps.id AS fpsid
FROM
(
(
nomencladores.pais ps
JOIN nomencladores.pais_fabricante_producto_solicitud pfps ON ((pfps.pais_id = ps.id))
)
JOIN negocio.fabricante_producto_solicitud fps ON (
(
pfps.fabricante_producto_solicitud_id = fps.id
)
)
);

Я пытаюсь отобразить вид следующим образом:

use Doctrine\ORM\Mapping as ORM;

/**
* @ORM\Entity
* @ORM\Table(name="nomencladores.obtenerPaisesPorFabricanteProductoSolicitud", schema="nomencladores")
*/
class ObtenerPaisesPorFabricanteProductoSolicitud
{
/**
* @ORM\Id
* @ORM\Column(name="psid", type="integer", nullable=false, unique=true)
*/
protected $ps;

/**
* @ORM\Column(name="fpsid", type="integer")
*/
protected $fps;

/**
* @ORM\Column(name="nombre", type="string")
*/
protected $nombre;

public function getPs()
{
return $this->ps;
}

public function getFps()
{
return $this->fps;
}

public function getNombre()
{
return $this->nombre;
}
}

Но каждый раз, когда я запускаю этот код на нем:

$ent = $em->getRepository("AppBundle:ObtenerPaisesPorFabricanteProductoSolicitud")->findBy(
array(
"fps" => $entF->getId()
)
);

Я получил этот результат:

Возникла исключительная ситуация при выполнении SELECT t0.psid AS psid1,
t0.fpsid AS fpsid2, t0.nombre AS nombre3 ОТ
nomencladores.obtenerPaisesPorFabricanteProductoSolicitud t0 ГДЕ
t0.fpsid =? ‘ с параметрами [22]:
SQLSTATE [42P01]: неопределенная таблица: 7 ОШИБКА: отношение «nomencladores.obtenerpaisesporfabricanteproductosolicitud» не
существует ЛИНИЯ 1: … d1, t0.fpsid AS fpsid2, t0.nombre AS nombre3 ОТ
nomenclado …

Если я удаляю аннотации, то ошибка преобразуется в это:

«Учебный класс
«AppBundle \ Entity \ ObtenerPaisesPorFabricanteProductoSolicitud» не является действительным объектом или сопоставленным суперклассом ».

Почему Doctrine2 или Symfony пытаются выполнить запрос, а не просматривать представление? Как я могу выполнить представление со стороны Symfony2 / Doctrine2?

РЕДАКТИРОВАТЬ

В качестве дополнительного примечания я использую PostgreSQL в качестве БД, и у него есть несколько сквем, в этом случае я написал вид на nomencladores схемы, но я попытался положить в public схема и ничего не работает, видимо Doctrine не находит представление о схеме

2

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]