Symfony 3 - [Разбивка и сортировка KNP] Сортировка для собственной проблемы запроса

В моем приложении я использую две базы данных, одна из которых является базой данных приложения, а другая используется для извлечения данных для приложения [Использование обычных операторов SQL для извлечения данных]

Я хочу отобразить данные 2-й базы данных в моем приложении, все работает нормально, даже нумерация страниц, но я не знаю, как реализовать сортировку. Использование Knp-пагинации.

Разбивка на страницы и сортировка работают нормально для данных базы данных приложения.

Вот код

контроллер

$db = $this->getDoctrine()->getConnection('2ndDatabase');
        $sql = "select * from table1, table2 where somevariable_id = ? and table1.id = table2.id and rownum<=50";
        $statement = $db->prepare($sql);
        $statement->bindParam('1', $somevariableidvalue);
        $statement->execute();
        $data = $statement->fetchall();

    /**
     * @var $paginator \Knp\Component\Pager\Paginator
     */
    $paginator = $this->get('knp_paginator');
    $result = $paginator->paginate(
        $data,
        $request->query->getInt('page',1),
        $request->query->getInt('limit', 10)
    )

Посмотреть

            <th>{{ knp_pagination_sortable(data, 'ID', 'whattowritehere') }}</th>
            <th>{{ knp_pagination_sortable(data, 'Title', 'whattowritehere') }}</th>
            <th>{{ knp_pagination_sortable(data, 'Name', 'whattowritehere') }}</th>

Вместо того, чтобы писать, здесь пробовали разные вещи, пытаясь получить доступ к таблице, но я не думаю, что смогу получить к ней доступ без модели / сущности. У меня нет какой-либо модели / сущности, определенной для 2-й базы данных, поэтому мне сложно создать менеджер сущностей, чтобы превратить sql в оператор dql.

  • Могу ли я превратить этот sql в dql (это решит мою проблему! У меня не определен менеджер сущностей для этой базы данных, и нет модели / сущности для базы данных)

  • Есть ли способ манипулировать $data так как это работает для нумерации страниц, я думаю, что может быть способ сортировки, а также

  • Я что-то пропустил?

  • Это вообще возможно сделать?

whattowritehere - пробованное имя столбца (не работает, без ошибок) - data.variablename (освобождение данных - массив, ожидающий объект) - ссылка на массив (та же ошибка)

0 ответов

Другие вопросы по тегам