バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > その他 > エンティティでのリポジトリの呼び出し方

その他

新規スレッドを追加する

フラット表示 前のトピック | 次のトピック
投稿者 スレッド
umebius
投稿日時: 2019/12/12 8:19
対応状況: −−−
登録日: 2016/7/22
居住地:
投稿: 2085
Re: エンティティでのリポジトリの呼び出し方
2系から3系、4系に移行する際はこのケースをよくお見かけします。

2系では外部キー制約がなかったため、データベース上直接レコード削除が可能で大概動作もしていましたが、基本的に3系、4系ではエラーになります。

実際に対応したProductClassのデータを投入する以外ですと、考えられそうな対応策としては下記のあたりになります。

マイページだけだとこれでいけると思いますが、受注管理なども考えると、他にも色々必要かもしれません。

1.product_class_idが物理削除されていれば
dtb_order_itemテーブルのproduct_class_idをNULLにする。

2.データがおかしくないかのチェックを入れる
OrderItemエンティティに、EntityUtil::isEmptyでレコードが存在するかのチェックを入れるなど。

※EntityUtil::isEmptyは4系では非推奨メソッドとなっています。

/**
         * Get productClass.
         *
         * @return \Eccube\Entity\ProductClass|null
         */
        public function getProductClass()
        {
            if (\Eccube\Util\EntityUtil::isEmpty($this->ProductClass)) {
                return null;
            }
            return $this->ProductClass;
        }


----------------
EC-CUBEカスタマイズ・高速化・脆弱性対策・SEO ご相談ください。

2系・3系から4系へのバージョンアップ実績豊富

フラット表示 前のトピック | 次のトピック


題名 投稿者 日時
   エンティティでのリポジトリの呼び出し方 tori3103 2019/12/8 23:25
     Re: エンティティでのリポジトリの呼び出し方 468 2019/12/11 9:45
       Re: エンティティでのリポジトリの呼び出し方 tori3103 2019/12/11 11:15
         Re: エンティティでのリポジトリの呼び出し方 468 2019/12/11 17:08
           Re: エンティティでのリポジトリの呼び出し方 tori3103 2019/12/11 23:53
           » Re: エンティティでのリポジトリの呼び出し方 umebius 2019/12/12 8:19
               Re: エンティティでのリポジトリの呼び出し方 tori3103 2019/12/12 18:28

 



ログイン


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

統計情報

総メンバー数は88,938名です
総投稿数は110,016件です

投稿数ランキング

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
1296
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.