Knp Paginator подчеркивает в таблице имя проблемы? - PullRequest
0 голосов
/ 10 февраля 2019

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

Я установил пакет Knp Paginator в Symfony 3.4 и реализовал его для нескольких классов.Теперь у меня есть класс AppBundle \ Entity \ HAddress.И пачка понимает, что это название неверно.Это моя сущность (часть):

/**
 * HAddress
 *
 * @ORM\Table(name="h_address")
 * @ORM\Entity(repositoryClass="AppBundle\Repository\HAddressRepository")
 * @Table(indexes={@Index(columns={"house_number", "street"}, flags={"fulltext"})})
 */
class HAddress

Это мой контроллер:

public function indexAction(Request $request)
{
        // Not important for this
    if(isset($searchString) && !empty($searchString)) {
        // Not important for this
    } else {
        $find = $this->getDoctrine()
            ->getRepository("AppBundle:HAddress")->createQueryBuilder("p");     <-------------Here is the problem

        /** @var EntityManager $em */
        $query = $em->createQuery($find);

        /** @var "Knp\Component\Pager\Paginator" */
        $hAddresses = $paginator->paginate(
            $query            <----------- And Here
        );
    }

    return $this->render('haddress/index.html.twig', array(

И на странице загрузки я получаю эту ошибку:

Возникла исключительная ситуация при выполнении 'SELECT count (DISTINCT h0_.id) AS sclr_0 FROM haddress h0 _':

SQLSTATE [42S02]: базовая таблица или представление не найдены: 1146 Таблица «horus.haddress» не найденаСуществуют

Из приведенной выше аннотации ясно, что имя таблицы - "h_address", а не "haddress".Это какое-то соглашение об именах, я не знаю, какие настройки я пропустил, или ошибка?

Пожалуйста, если вы знаете, как помочь мне решить эту проблему. Что сделать, чтобы Knp Paginator увидел и использовал правильное имя таблицы?

1 Ответ

0 голосов
/ 10 февраля 2019

О, извините, я только что заметил, что я не обновлял базу данных после добавления полнотекстовых индексов:

* @Table(indexes={@Index(columns={"house_number", "street"}, flags={"fulltext"})})

После запуска

doctrine: schema: update --force

все работало нормально.

...