2.1からMagentoが導入されましたMagento/Framework/Model/EntityManager
私はここで間違っているかもしれませんが、私の理解から、Magento/Framework/Model/AbstractModel
継承を介して機能を実装していたものを置き換え、構成を介してこれを解決することです(FYI:https : //en.m.wikipedia.org/wiki/Composition_over_inheritance)
コアファイルでサンプルを入手できます:https : //github.com/magento/magento2/blob/59671558ecdab652b40db2d1a7c63d5b1dea0a92/app/code/Magento/Cms/Model/ResourceModel/Block.php
基本的に、すべてのCRUD操作はクラスで明示的に宣言され、クラスに委ねられEntityManager
ます。2.1以前では、親メソッドは継承を介して呼び出されていました。
だから私の質問は:
EntityManager
2.1以前の継承システムに比べて、どのような利点がありますか?- されるだけで十分(上記の例のように)CRUDメソッドを宣言すると、カスタムのCRUDモジュールでそれを実装を開始以上ありますか?
1
答えではありませんが、EntityManagerを使用する利点の1つは、リポジトリ型システムのインジェクションが可能になることです-エンティティがすでに引き込まれている場合、DBにアクセスするのではなく、メモリ内でロードが発生する可能性がありますメモリなど
—
ナバー