【发布时间】:2022-08-22 21:27:23
【问题描述】:
我最近才开始编程,我为我的实体(Advertisement、Category($id, $name)、User)提供了理论夹具和铸造厂。
由于我无法弄清楚如何从代工厂中为某个类别获取我想要的名称,因此我尝试使用下面的代码在夹具中自己编写它(完全忽略 categoryFactory)。
但是我只得到了我写的数组的最后一项(cpu)。
(只有 cpu 类别的广告,没有其他类别保存在数据库中)
基本上,我的想法是创建类别并为每个类别创建一个Advertisement。
class AppFixtures extends Fixture
{
public function load(ObjectManager $manager): void
{
$category = new Category();
$names = array(
\'pc\',
\'laptop\',
\'cpu\');
foreach ($names as $name)
{
$nam = $category->setName($name);
$manager->persist($nam);
UserFactory::createMany(3);
AdvertisementFactory::createMany(20,[
\'user\'=> UserFactory::random(),
\'category\'=>$nam
]);
}
$manager->flush();
}
}
-
你为什么把名字写到相同的
$category实体多次?
标签: php symfony doctrine-orm symfony5