Symfony 我们能从两个来源储存一对一的关系吗?
在我的电子商务项目中,我有以下表格:Symfony 我们能从两个来源储存一对一的关系吗?,symfony,doctrine-orm,symfony5,Symfony,Doctrine Orm,Symfony5,在我的电子商务项目中,我有以下表格: 客栈 订单产品 并且GuestUser与OrderProduct有一个或多个关系: 我正在尝试持久化数据,但只有最后一项存储在OrderProduct from basket中,它来自会话: 客梯 /** * @ORM\OneToMany(targetEntity=OrderProduct::class, mappedBy="guestUser", cascade={"persist", "remov
- 客栈
- 订单产品
/**
* @ORM\OneToMany(targetEntity=OrderProduct::class, mappedBy="guestUser", cascade={"persist", "remove"})
*/
private $orderproduct;
订单产品类
/**
* @ORM\OneToOne(targetEntity=Item::class, cascade={"persist", "remove"})
*/
private $product;
控制器
foreach($basket as $item_basket){
// dd($basket);
//$guest->addOrderproduct($op->addProduct($item->getId()));
//$op = new OrderProduct();
$guest->addOrderproduct($op->setSize('XL'));
$guest->addOrderproduct($op->setPrice('200'));
$guest->addOrderProduct($op->setItemIds($item_basket->getId()));
$em->persist($guest);
}
$em = $this->getDoctrine()->getManager();
$em->persist($guest);
$em->flush();
我想在这里实现的是,我想将购物篮(来自会话)项目存储到OrderProduct,并在GuestUser中存储来自表单的来宾用户。
上面的代码正在工作,但只存储最后一项
例如:
为什么在循环之后定义
$em=
?我猜在循环中,你必须坚持$op而不是$guest
[array_1]
[array_2] only this one.