Symfony - рендеринг просмотра по определенному статусу - PullRequest
0 голосов
/ 27 сентября 2018

Я определил поле состояния в моей таблице базы данных как

        $newPlay->setStatus(Plays::STATUS_PUBLISHED);

, которое теперь сохраняется в этой таблице базы данных.

Мне нужно отобразить представление с полями, имеющими этот статус.

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

Контроллер "AppBundle \ Website \ Controller \ ОпубликованоTicketsController :: publTicketsAction ()" требует, чтобы вы указали значение дляАргумент «$ status».Либо аргумент имеет значение NULL, и значение NULL не было предоставлено, значение по умолчанию не было предоставлено, либо после этого есть необязательный аргумент.

Это мой вызов API ..

    /**
 * @Route("/published-tickets", name="published_tickets")
 * @param Request $request
 * @return \Symfony\Component\HttpFoundation\Response
 * @throws \Exception
 */

public function publishedTicketsAction(Request $request, $status)
{

    $query = $this->getDoctrine()
        ->getRepository('AppBundle:Plays')->findBy(['status' => $status]);

    return $this->render('@FrontTemplates/pages/published-tickets.html.twig', array(
        'query' => $query,
        'status' => $status
    ));
}

1 Ответ

0 голосов
/ 28 сентября 2018

Я сделал это следующим образом ..

В моем служении ..

    public function publishedTicket()
{
    $query = $this->getPlaysRepository()
        ->createQueryBuilder('t')
        ->select('t')
        ->where('t.status =:status')
        ->setParameter('status', Plays::STATUS_PUBLISHED)
        ->getQuery()
        ->getResult();

    return $query;
}

и в моем контроллере

$playPublish = $this->container->get('publish.tickets')->publishedTicket();

    return $this->render('@FrontTemplates/pages/published-tickets.html.twig', array(
        'playPublish' => $playPublish
    ));

это та часть, которую я могне понял ..

-> setParameter ('status', Plays :: STATUS_PUBLISHED)

...