Здравствуйте, я пришел к вам, потому что у меня возникла небольшая проблема с фейкером и dataFixtures, фактически, когда я запускаю команду для добавления данных, я имею ошибку в базе данных, потому что «region_id» равен нулю, я делюсь своим кодом
namespace App\DataFixtures;
use App\Entity\Advertisement;
use App\Entity\Category;
use App\Entity\Region;
use App\Entity\User;
use Doctrine\Bundle\FixturesBundle\Fixture;
use Doctrine\Common\Persistence\ObjectManager;
use Faker\ORM\Doctrine\Populator;
class AppFixtures extends Fixture
{
/**
* @param ObjectManager $manager
*/
public function load(ObjectManager $manager)
{
$generator = \Faker\Factory::create('fr_FR');
$populator = new Populator($generator, $manager);
$populator->addEntity(Advertisement::class, 200, [
'address' => function() use ($generator) { return $generator->address; },
'description' => $generator->text(2000),
'price' => mt_getrandmax(),
'imageName' => function() use ($generator) { return 'https://picsum.photos/1000/700'; },
'imageName2' => function() use ($generator) { return 'https://picsum.photos/1000/700'; },
'imageName3' => function() use ($generator) { return 'https://picsum.photos/1000/700'; },
'imageName4' => function() use ($generator) { return 'https://picsum.photos/1000/700'; },
]);
$populator->addEntity(User::class, 10);
$populator->addEntity(Category::class, 5);
$populator->execute();
$manager->flush();
}
}
и моя сущность Рекламные отношения
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Region", inversedBy="advertisement")
* @ORM\JoinColumn(nullable=false)
*/
private $region;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Category", inversedBy="advertisement")
* @ORM\JoinColumn(nullable=false)
*/
private $category;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\User", inversedBy="advertisement")
* @ORM\JoinColumn(nullable=false)
*/
private $user;
/**
* @ORM\Column(type="datetime")
*/
private $CreatedAt;
public function __construct()
{
$this->CreatedAt = new \DateTime('now', new \DateTimeZone('Europe/Paris'));
$this->isValid = 0;
}
Моя проблема в том, что в базе данных мне сообщают отношения в нуле. Я не понимаю, почему, если у вас есть решение или идея, я беруСпасибо за вашу помощь