Доктрина - работа с двумя идентификаторами для сохранения - PullRequest
0 голосов
/ 06 февраля 2019

У меня есть две сущности.Доллар и кошелек.Доллар уже существует в моей базе данных, и мне нужно сменить кошелек.Поэтому я должен был сделать вызов API, который должен получить dollar_id и wallet_id и переместить доллары в другой кошелек.

Сначала я должен найти свой dollar_id через мою сущность Dollar, а затем обновить ее поле wallet_id с помощью параметра, который я передал.

Это мой сервис:

public function moveDollar($id)
{

    $dollar = $this->getDollarRepository()->find($id);
    $wallet = $this->getWalletRepository()->find($id);

    if ($dollar instanceof Dollar)
    {
        $dollar->setWallet($wallet);
    }

    $this->em->persist($dollar);
    $this->em->flush();

    return $dollar;

}

И мой контроллер (думаю, мне нужно передать оба идентификатора, а не один)

Контроллер:

 public function moveDollarAction()
{
    $this->requirePostParams(['wallet_id', 'dollar_id']);

    $this->container->get('app')->moveDollar(
        $this->data['wallet_id'],
        $this->data['dollar_id']
    );

    return $this->success();
}

Какие-нибудь рекомендации?

...