質問 > その他 > Entity拡張による既存メソッドの書き換え方法 |
その他
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
gwkozaki |
投稿日時: 2020/8/21 16:43
対応状況: −−−
|
常連 登録日: 2019/7/30 居住地: 日本 投稿: 53 |
Entity拡張による既存メソッドの書き換え方法 ▼テンプレート
[EC-CUBE] 4.0.4 [導入プラグインの有無] あれば導入プラグインを記載 [カスタマイズの有無] Entityの拡張により、以下のテーブルにFax番号カラムを追加 ・dtb_order ・dtb_shipping ・dtb_customer_address ◆質問内容 現在上記のカスタマイズにより、それぞれのテーブルにカラムを追加いたしました。 ですが処理を追っていく中で、Eccube\Entity\Shipping.phpとEccube\Entity\CustomerAddress.php内で、 以下のようなメソッドを定義してあり、そちらへのset処理の追加が必要だとわかりました。 ============================ ●Shipping.php setFromCustomerAddress(); clearCustomerAddress(); ●CustomerAddress.php setFromCustomer(); setFromShipping(); ============================ そこで、下記のサイトを参考にして既存メソッドの書き換えを図ったのですが、ECCUBEのバージョンが異なるためうまく機能しませんでした。 https://qiita.com/izayoi256/items/cdd8074f7264b5d90f90 主な原因は、上記サイト内で出てくるapp/Customize/Service/EntityProxyService.php内、__construct周りの処理が異なっていることだと思います。 ですが、ECCUBE4.0.4系のsrc/Eccube/Service/EntityProxyService.phpを基に、__construct部分を以下のように書き換えても上手くいきません。
◆上記に書き換えた場合に出るエラー文
どなたか、もしEntity内の既存メソッドの置換方法をご存知の方がいらっしゃいましたら、どこが誤っているのかご教授いただきたいです。 お手数をおかけいたしますが、よろしくお願いいたします。 |
umebius |
投稿日時: 2020/8/23 13:13
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 投稿: 2085 |
Re: Entity拡張による既存メソッドの書き換え方法 app/config/eccube/services.yamlで
Serviceにdecorateしている部分で追加になっているargumentを渡せば動くのではないでしょうか? Customize\Service\EntityProxyService: decorates: Eccube\Service\EntityProxyService arguments: - '@doctrine.orm.default_entity_manager' - '@service_container' - '@Customize\Service\EntityProxyService.inner' あと記事では記載されていませんがCustomize\Service\EntityProxyServiceで下記のuseも必要ですかね? use Doctrine\ORM\EntityManagerInterface; use Symfony\Component\DependencyInjection\ContainerInterface;
|
gwkozaki |
投稿日時: 2020/8/24 9:24
対応状況: 解決済
|
常連 登録日: 2019/7/30 居住地: 日本 投稿: 53 |
Re: Entity拡張による既存メソッドの書き換え方法 umebius 様
ご協力いただき、ありがとうございます! umebius 様にご教授いただいたようにargumentを渡したところ、 無事既存メソッドを書き換えることが出来ました! 今回の件でservice.yaml周りについての知識不足が分かったので、 その辺りについてもっと理解を深めて参ります。 この度は、本当に助かりました。 ご教授いただき、誠にありがとうございました! 今後ともどうぞ、よろしくお願いいたします。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |