0
自從我阻止將訂單中的項目保存到數據庫會話以來,已經有好幾天了。在會話symfony中堅持陣列存儲
我在一個數組的會話中股票的文章,我不知道如何堅持陣列。我嘗試將數組轉換爲對象,但我不能。這是我的服務:
public function addArticle($id)
{
$sessionCart = $this->session;
$article = $this->doctrine->getRepository('AppBundle:Article')->find($id);
$cart = $sessionCart->get('cart');
$cart[] = $article;
$sessionCart->set('cart', $cart);
// use later for delivery
$sessionCart->get('commande');
return $sessionCart;
}
public function panier()
{
$articles = $this->session->get('cart');
return $articles;
}
public function delivery(Request $request)
{
$commande = new Commande();
$articles = $this->session->get('cart');
$form = $this->form->create(CommandeType::class, $commande);
if ($request->isMethod('POST') && $form->handleRequest($request)->isValid())
{
$data = $form->getData();
$this->session->set('commande', $data);
$response = new RedirectResponse('payment');
$response->send();
}
return [$form, $articles];
}
public function payment(Request $request)
{
$articles = $this->session->get('cart');
$commande = $this->session->get('commande');
if ($request->isMethod('POST')) {
$em = $this->doctrine;
$em->persist($articles);
$em->persist($commande);
$em->flush();
}
return[$articles, $commande];
}
錯誤: 「EntityManager的#堅持()預計參數1是給定的實體對象,數組」
該訂單是持續的,但不是項目。
感謝
是$車是包含列表中的數組訂單的文章。它不符合foreach。 – chk35
如果文章是它應該工作的學說實體。什麼是錯誤信息?如果你在'foreach'的第一行添加'var_dump($ article)',你會看到什麼?你看到教義實體嗎? – fxlacroix
如果我做了var_dump什麼都沒有出現,我仍然有symfony錯誤:EntityManager#persist()期望參數1是一個實體對象,給定的數組。 – chk35