バージョン選択

フォーラム

メニュー

オンライン状況

57 人のユーザが現在オンラインです。 (48 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 57
もっと...

サイト内検索

質問 > フロント機能 > ご注文内容確認画面からトップページへ遷移後、再度商品追加し決済しようとするとエラーになる

フロント機能

新規スレッドを追加する

フラット表示 前のトピック | 次のトピック
投稿者 スレッド
okotaro
投稿日時: 2020/11/11 2:00
対応状況: −−−
新米
登録日: 2018/10/17
居住地:
投稿: 6
ご注文内容確認画面からトップページへ遷移後、再度商品追加し決済しようとするとエラーになる
お忙しいところ恐れ入ります。
色々調べてみたのですが、解決に至らないためご教示願います。

プログラミングの勉強を兼ねてEC-CUBE3の非会員のご注文内容確認画面(/shopping/nonmember)に
年齢確認のラジオボタンを追加するためにマスターテーブルおよび下記ファイルを作成/修正し、
ラジオボタンによる年齢確認およびその結果をDBに格納することができるようになりました。

しかし、ご注文内容確認画面(/shopping)に遷移後、「注文する」ボタンをクリックせずに
トップ画面に戻り、更に商品の検索および追加後、購入処理を続けたところ、
ご注文内容確認画面(/shopping)にて下記エラーメッセージが表示されるようになり、以降は処理を進めることができなくなりました。

色々調べてみたところ、本サイトの下記質問の回答で対処できるのではと思い、
ShoppingService.phpに下記の通り追記いたしましたが解決に至りませんでした。

このエラーの解消法および他の作業で発生した場合にセッションをクリアする手順を
ご教示いただけないでしょうか。

[エラーメッセージ]
ORMInvalidArgumentException in ORMInvalidArgumentException.php line 91:
A new entity was found through the relationship 'Eccube\Entity\Order#R18' that was not configured to cascade persist operations for entity: 18歳以上.
To solve this issue: Either explicitly call EntityManager#persist() on this unknown entity or configure cascade persist this association in the mapping for example @ManyToOne(..,cascade={"persist"}).

[参考質問]
https://xoops.ec-cube.net/modules/newbb/viewtopic.php?viewmode=thread&topic_id=20341&forum=17

[ShoppingService.phpへの追加コード]
※getNonMemberメソッドへ下記を追加

if (!array_key_exists('customer', $nonMember) || !array_key_exists('r18', $nonMember)) {
return null;
}

$Customer = $nonMember['customer'];
$Customer->setPropertiesFromArray($nonMember, array('customer', 'id', 'r18', 'email', 'password', 'salt'));
$Customer->setR18($this->app['eccube.repository.master.r18']->find($nonMember['r18']));
return $Customer;


[作業内容]
※未熟なため不要な設定が入っている可能性がございます。

 ①mtb_sexを参考にmtb_r18の作成。
 ②dtb_orderへorder_sexカラムを参考にorder_r18カラムを追加。
 ③/src/Eccube/Controller/ShoppingController.phpにr18を追加。
 ④/src/Eccube/Entity/Customer.phpにr18を追加。
 ⑤/src/Eccube/Entity/Order.phpにr18を追加。
 ⑥/src/Eccube/Entity/Master/R18.phpを作成(Sex.phpを参考)。
 ⑦/src/Eccube/Form/Type/OrderSearchType.phpにr18を追加。
 ⑧/src/Eccube/Form/Type/Frontにr18を追加。
 ⑨/src/Eccube/Form/Type/Master/R18Type.phpを作成(Sex.phpを参考)。
 ⑩/src/Eccube/Repository/OrderRepository.phpにr18を追加。
 ⑪/src/Eccube/Repository/Master/R18Repository.phpを作成(Sex.phpを参考)。
 ⑫/src/Eccube/Resource/doctrine/Eccube.Entity.Order.dcm.ymlにr18を追加。
 ⑬/src/Eccube/Resource/doctrine/master/Eccube.Entity.Master.R18.dcm.ymlを作成(Sex.phpを参考)。
 ⑭/src/Eccube/ServiceProvider/EccubeServiceProvider_org.phpにr18を追加。
 ⑮/src/Eccube/Service/ShoppingService.php
  ※copyToOrderFromCustomerメソッドへ下記を追加、他は未実施。
   $Order
    ->setR18($Customer->getR18())
 ⑯/app/template/default/Shopping/nonmember.twig
 
[EC-CUBE] 3.0.18
[レンタルサーバ] ロリポップ!
[PHP] 5.6
[データベース] mysql5.6
[導入プラグインの有無] なし
フラット表示 前のトピック | 次のトピック


題名 投稿者 日時
 » ご注文内容確認画面からトップページへ遷移後、再度商品追加し決済しようとするとエラーになる okotaro 2020/11/11 2:00
     Re: ご注文内容確認画面からトップページへ遷移後、再度商品追加し決済しようとするとエラーになる 468 2020/11/14 2:29
       Re: ご注文内容確認画面からトップページへ遷移後、再度商品追加し決済しようとするとエラーになる okotaro 2020/11/14 3:22
         Re: ご注文内容確認画面からトップページへ遷移後、再度商品追加し決済しようとするとエラーになる 468 2020/11/14 11:17
           Re: ご注文内容確認画面からトップページへ遷移後、再度商品追加し決済しようとするとエラーになる okotaro 2020/11/15 1:12
           Re: ご注文内容確認画面からトップページへ遷移後、再度商品追加し決済しようとするとエラーになる okotaro 2020/11/23 3:14
             Re: ご注文内容確認画面からトップページへ遷移後、再度商品追加し決済しようとするとエラーになる 468 2020/11/24 12:03
               Re: ご注文内容確認画面からトップページへ遷移後、再度商品追加し決済しようとするとエラーになる okotaro 2020/11/25 1:21
               Re: ご注文内容確認画面からトップページへ遷移後、再度商品追加し決済しようとするとエラーになる okotaro 2020/11/28 19:41

 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,854名です
総投稿数は109,989件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1646
8
red
1570
9
mcontact
1291
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.