1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
|
<?php
namespace App\CoreBundle\Command;
use App\CoreBundle\Entity\User;
use App\CoreBundle\Entity\UserRepository;
use Doctrine\ORM\EntityManager;
use Psr\Log\LoggerInterface;
use Symfony\Bundle\FrameworkBundle\Command\ContainerAwareCommand;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Input\InputArgument;
use Symfony\Component\Console\Input\InputOption;
use Symfony\Component\Console\Output\OutputInterface;
/**
* App\CoreBundle\Command\TvdfSyncCommand
*/
class TvdfSyncCommand extends ContainerAwareCommand
{
/**
* @var LoggerInterface
*/
private $logger;
/**
* @var EntityManager
*/
private $objectManager;
/**
* @var UserRepository
*/
private $userRepository;
/**
* @param UserRepository $userRepository
*/
public function __construct(LoggerInterface $logger, EntityManager $objectManager, UserRepository $userRepository)
{
parent::__construct();
$this->logger = $logger;
$this->objectManager = $objectManager;
$this->userRepository = $userRepository;
}
/**
* {@inheritDoc}
*/
public function configure()
{
$this
->setName('test:update:city')
->setDescription('Description')
->setDefinition([
new InputOption('dry-run', null, InputOption::VALUE_NONE, 'Dry run mode'),
]);
}
/**
* {@inheritDoc}
*/
public function execute(InputInterface $input, OutputInterface $output)
{
$em = $this->objectManager;
$user = $this->userRepository->findOneById(1);
$user->setCity('Paris');
$em->persist($user);
$em->flush(); // flush ne fonctionne pas, la bdd n'est pas mise à jour
}
} |