указать поля в zf2 использует Doctrine2 запрос


Как мы определяем поля для возврата в результате, в Zend framework 2, используя доктрину 2? Вот мой запрос:

$allLanguages = $this->getEntityManager()
                    ->getRepository('Language')
                    ->findAll();

Я просто хочу поле 'name' в результате из таблицы языков.

2 2

2 ответа:

Я обычно использую DQL, как это, чтобы настроить запрос.

    $u = $_GET['u'];
    $query = $this->getEntityManager()->createQuery("SELECT u.username FROM Auth\Entity\User u WHERE u.username LIKE :username AND u.companyID = :companyID ");
    $query->setParameter('username', '%'.$u.'%')
            ->setParameter('companyID', $companyID);

    $users = $query->getResult();

В вашем случае выше. Это может быть что-то вроде того.

$query = $this->getEntityManager()->createQuery("SELECT l.name FROM Langauge l");

$langaugeNames = $query->getResult();

Доктрина языка запросов DQL

Конструктор Запросов

Используйте DQL напрямую:

$languages = $entityManager->createQuery("SELECT l.name FROM Language l")->getResult();

Http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference/dql-doctrine-query-language.html#pure-and-mixed-results