запрос доктрины, возвращающий массив, а не объект, как ожидалось

0

Я строю небольшой проект с Symfony 2.6. Это очень просто, только с одним классом сущностей, который сопоставляется с данными, вставленными в базу данных MySQL, с использованием python, работающего на малине Pi.

проблема

когда я запускаю этот простой запрос репозитория, набор результатов, по-видимому, преобразуется в массив, который вызывает ошибку (см. ниже). Я не уверен, почему это преобразование происходит.

Метод репо

public function getDataInRange( \DateTime $from, \DateTime $until)
{
    $query = $this->getEntityManager()->createQuery('
        select d
        from AppBundle:weatherdata d
        where d.idx > :f
        and d.idx < :u ')->setParameters(array( 'f' => $from, 'u' => $until      ));

    return $query->getResult();
}

ошибка

Catchable Fatal Error: Object of class DateTime could not be converted to string

Структура базы данных

основной первичный ключ, 'idx' - это объект datetime, все остальное - double.

Попробовал..

Я попытался изменить метод репо, чтобы возвращать getArrayResult() вместо этого, что останавливает ошибку, но мне нужно, чтобы результирующий набор был в формате объекта из-за другого беспорядка, который мне нужно сделать с данными.

Заранее спасибо.

Теги:
doctrine2

1 ответ

-2
  1. U лучше использовать МЕЖДУ
  2. Преобразование DateTime в строку

    $qb-> где ('e.fecha BETWEEN: понедельник AND: sunday') → setParameter (формат "понедельник", $monday-> ("Ym-d")) → setParameter ("sunday", $sunday- > формат ( 'Ут-d'));

пожалуйста, используйте поиск, уже ответили здесь

  • 0
    Это не то, что я спрашиваю. Запрос работает нормально, просто возвращает набор массивов, а не набор объектов. И да, я использовал поиск, но нет опубликованных решений, которые ответили бы точно.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню