質問 > フロント機能 > カートに入れる時エラーがでます |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
acxAura |
投稿日時: 2022/10/6 17:17
対応状況: 開発中
|
半人前 登録日: 2022/10/6 居住地: 投稿: 17 |
カートに入れる時エラーがでます ▼テンプレート
[EC-CUBE] 4.1.2 [レンタルサーバ] localhost [PHP] 7.4 [データベース] mysql5.7.31 お世話になっております。 今part A, part B, part Cを合わせてCustomという商品を作ろうと思っています。でも、パーツの種類が多すぎて規格を使ったら大変になるので、A,B,Cの独自的なテーブルを作って、カートに入れる前にそれをCustomテーブルに合わせました。その後、カスタマイズコントローラでdtb_product_classに追加することまではできました。(Baseという商品(規格なし)を0円に登録したので、Product_idはそのBaseのidになります) そこで、 $custom_product_class = new ProductClass(); $custom_product_class ->setProduct($Product); などを設定して新しいproduct_classを作りました(dtb_product_classに追加するのがこれです) $doct->persist($custom_product_class); $doct->flush(); しましたが、その後関数に追加した、 $this->cartService->addProduct($custom_product_class); <ーここでエラーが出てます。理由がよく分からないです... その代わりに、 Baseという商品(規格なし)を0円に登録したので、Customのデータをdtb_product_classに登録してaddProductでBaseに繋がったらCustomのpriceを反映したかったんですが、 $Product = $doct->getRepository(Product::class)->find($id); $doct->persist($custom_product_class); $doct->flush(); $Product->addProductClass($custom_product_class); <ーProductに Product Classがつながりません。 $this->entityManager->persist($Product); $this->entityManager->flush(); dumpでチェックしても$Product->hasProduct()はfalseです... カートに入れないので色々考えてみましたが、方法が全然みつからないです... |
acxAura |
投稿日時: 2022/10/6 17:47
対応状況: −−−
|
半人前 登録日: 2022/10/6 居住地: 投稿: 17 |
Re: カートに入れる時エラーがでます カートに入れる時発生する問題はCart Service.phpの中のaddCartの
$this->restoreCarts($allCartItems);からということを見つけました でも解決策がわからないです。。 |
nanasess |
投稿日時: 2022/10/11 16:25
対応状況: −−−
|
神 登録日: 2006/9/9 居住地: 投稿: 2313 |
Re: カートに入れる時エラーがでます 具体的にどのようなエラーが出ますでしょうか?
$this->restoreCarts($allCartItems); の処理は大変複雑なので、もう少し詳細がわかると回答がつきやすいかと思います。 |
acxAura |
投稿日時: 2022/10/11 18:49
対応状況: −−−
|
半人前 登録日: 2022/10/6 居住地: 投稿: 17 |
Re: カートに入れる時エラーがでます お返事ありがとうございます
問題は解決しました product classを生成する時saleTypeが設定されなかったのが原因でした |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |