Как проверить, успешно ли выполнено обновление Entity (строки таблицы) и возвращен ли ответ true / false? - PullRequest
0 голосов
/ 18 января 2019

Хорошо .. вот метод:

public function likeUnlikeAction($category, $id, $type)
{
    $status = false;
    $message = '';

    $em = $this->getDoctrine()->getManager();
    $article = $em->getRepository("AppBundle:Article")->find($id);

    if ($type == 'like') {
        $article->setLikes($article->getLikes() + 1);
    } else {
        $article->setLikes($article->getLikes() - 1);
    }

    $em->persist($article);
    $em->flush();

    $likes = $article->getLikes();

    $response = array(
        'status' => $status,
        'message' => $message,
        'likes' => $likes
    );

    return new JsonResponse($response);

}

Как проверить, все ли в порядке, и обновить $message и $status Когда $em->persist() и $em->flush() всегда возвращают ноль?

1 Ответ

0 голосов
/ 18 января 2019

Если вы можете получить свою статью и если ваши геттеры / сеттеры работают, вам не нужно беспокоиться о $em->persist() и $em->flush()

Вы можете установить свое сообщение и статус, когда не найдетестатья.Также вы можете сравнить число «лайков» до и после обновления, чтобы увидеть, было ли применено обновление.

Из документов Symfony : обратите внимание, что вызов $ em-> persist ($ product)не обязательноНапомним, что этот метод просто говорит Doctrine управлять или «наблюдать» за объектом $ product.В этом случае, так как вы получили объект $ product из Doctrine, он уже управляем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...