人のユーザが現在オンラインです。5コントローラーのカスタマイズ方法コントローラーのコードを修正しないと実現できないカスタマイズ要件の場合に、皆様がどのように対応しているのか、どうするのがECCUBE的に正道なのか知りたいです。私の思いつく方法としては次の2つの方法がありますが、どちらがよいのでしょうか。他にもっと良い方法があるのでしょうか。1.ECCUBE本体のコードを修正する2.修正したいコントローラーのソースをapp/customize配下にまるまるコピーして、必要な箇所だけ修正する。皆様のご意見いただけると幸いです。修正する内容によっては、コントローラーをまるまるコピーする必要はないかと思います。可能であれば、カスタマイズしたいメソッドのみ追記して、ルーティングを上書きするのが良いのではないかと思います。----------------株式会社シロハチ■ECCUBE2系、3系構築カスタマイズご相談ください。バージョン管理するのが好みです。できますし、差分も簡単に把握できます。置くと、バージョンアップを適用したい場合に手作業でマージする必要があります。コントローラーのカスタマイズ方法ご意見ありがとうございます。1か2のどちらか一方に寄せるのではなく、状況に応じて使い分けるのが良いのでは?と勝手に納得しました。ECCUBE(Symfony)が提供している拡張機能だけで実現できるなら、本体のコードを修正する必要はないわけですし、それこそバージョンアップは簡単なはすですよね?どうしても本体のコードをいじる必要があるなら、app/Customizeに配置するのではなく、本体コードを直接修正するほうが差分確認の点で有利ですから。引用:ECCUBE(Symfony)が提供している拡張機能だけで実現できるなら、このあたりはまだ発展途上なので、拡張機能だけで何とかするのは現状では難しいと思います。(もちろん将来的には何とかできるようにしたいです)また、うまく拡張機能だけでカスタマイズできたとしても、バージョンアップ時の修正内容が干渉した場合は、手動でマージする必要があります。E2Eテストで検証が可能な場合です。自動でテストできない状況であれば、カスタマイズ部分への影響を手作業で検証する必要があり、バージョンアップが楽になるとは言えません。本体では具象クラスのインスタンスを利用しているため、本体に手を入れる必要がありますね。このあたりがまだ発展途上なので、今後のバージョンアップで対応されれば良いなと思っています。コントローラーのカスタマイズ方法ご意見ありがとうございます。既存フォームに項目を追加するような、ECCUBE(Symfony)の拡張機能だけで済むカスタマイズでも、本体のFormTypeを修正した方が良い、というお考えでしょうか。コントローラーのカスタマイズ方法ケースバイケースですね。大規模なカスタマイズをする場合、フォームの項目追加のみ拡張機能でやっていると保守性悪くなってしまいますし、わかりやすい単純なカスタマイズのみであれば、拡張機能のほうが良い場合もあると思います。