バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > その他 > 複数のDBの出し分けの方法について 4.X系

その他

新規スレッドを追加する

フラット表示 前のトピック | 次のトピック
投稿者 スレッド
ktm
投稿日時: 2024/7/28 16:45
対応状況: −−−
新米
登録日: 2024/7/28
居住地:
投稿: 4
複数のDBの出し分けの方法について 4.X系

EC-CUBE : 4.1.2-p1
サーバーOS : Linux
DBサーバー : MySQL 5.7.44
WEBサーバー: Apache/2.4.59 (Debian)
PHP 7.4.33

▼やりたいこと
複数のデータベースを利用してサイトごとにDBの参照先を変更したい

サイトAとサイトBがありますが、
サイトBでは、ユーザー周りのテーブル関係(dtb_customerなど約10テーブルほど)はサイトAを参照するようにしたいです。
方法としては、
▫️独自プラグインを作成(サイトB)
1. .envファイルにDBを追加


DATABASE_URL=サイトB
サイトA_DATABASE_URL=サイトA



2. doctrine.yamlの修正


省略...

 orm:
        auto_generate_proxy_classes: '%kernel.debug%'
        default_entity_manager: default
        entity_managers:
            default:
                connection: default
                naming_strategy: doctrine.orm.naming_strategy.underscore_number_aware
                auto_mapping: true
                dql:
                    string_functions:
                        NORMALIZE: Eccube\Doctrine\ORM\Query\Normalize
                    numeric_functions:
                        EXTRACT: Eccube\Doctrine\ORM\Query\Extract
                filters:
                    option_nostock_hidden:
                        class: Eccube\Doctrine\Filter\NoStockHiddenFilter
                        enabled: false
                    incomplete_order_status_hidden:
                        class: Eccube\Doctrine\Filter\OrderStatusFilter
                        enabled: false
            user:
                connection: user
                naming_strategy: doctrine.orm.naming_strategy.underscore_number_aware
                mappings:
                    独自プラグイン:
                        is_bundle: false
                        type: annotation
                        dir: '%kernel.project_dir%/app/Plugin/独自プラグイン名/Entity'
                        prefix: 'Plugin\独自プラグイン名\Entity'
                        alias: 独自プラグイン名
                dql:
                    string_functions:
                        NORMALIZE: Eccube\Doctrine\ORM\Query\Normalize
                    numeric_functions:
                        EXTRACT: Eccube\Doctrine\ORM\Query\Extract
                filters:
                    option_nostock_hidden:
                        class: Eccube\Doctrine\Filter\NoStockHiddenFilter
                        enabled: false
                    incomplete_order_status_hidden:
                        class: Eccube\Doctrine\Filter\OrderStatusFilter
                        enabled: false



3. Plugin配下にEntity, Repositoryを継承して配置

-----------------------------
このようなやり方で実現しようと考えて開発中なのですが、
Entity, Repository内の多量のパスの修正やエラーの箇所も次々と出てくるので開発に難航しております。
もっと効率のいい方法でDBの出しわけを実施できる方法が知りたいです。

有識者の方、ご教授いただけましたら幸いです。
フラット表示 前のトピック | 次のトピック


題名 投稿者 日時
 » 複数のDBの出し分けの方法について 4.X系 ktm 2024/7/28 16:45
     Re: 複数のDBの出し分けの方法について 4.X系 mcontact 2024/7/29 11:19
       Re: 複数のDBの出し分けの方法について 4.X系 ktm 2024/7/30 12:35
         Re: 複数のDBの出し分けの方法について 4.X系 ktm 2024/9/8 17:45
     Re: 複数のDBの出し分けの方法について 4.X系 red 2024/9/13 9:56
       Re: 複数のDBの出し分けの方法について 4.X系 ktm 2024/9/14 15:55

 



ログイン


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

統計情報

総メンバー数は94,613名です
総投稿数は111,319件です

投稿数ランキング

1
seasoft
7369
2
468
3217
3
AMUAMU
2712
4
nanasess
2324
5
umebius
2085
6
yuh
1880
7
h_tanaka
1790
8
red
1574
9
mcontact
1501
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
804
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.