Magento 2.1: использование менеджера сущностей

27

С 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 была бы возможность возможного внедрения системы типов репозитория, где загрузка могла бы происходить в памяти, а не попадать в БД, если объект уже был извлечен в память и т. д.
Наварр

Ответы:

16

В настоящее время мы не рекомендуем использовать EntityManager для ваших сущностей, поскольку это незаконченная функция, и мы планируем сделать конфигурацию более декларативной.

Идеи EntityManager:

  • разрешить персистентность Data Entity интерфейсом (не требует расширения от абстрактных классов)
  • сделать постоянное явное расширяемым
  • модульность
Канди
источник
Спасибо за то, что вы могли бы добавить в свой ответ причину, по которой вы не рекомендуете его использовать? (Незаконченная функция, глючит, другое?)
Рафаэль в Digital Pianism
1
Да, незаконченные фьючерсы, мы планируем сделать конфигурацию более декларативной
KAndy
4
Моар XML, МОАР! :)
nevvermind
Можем ли мы знать, в какую ожидаемую дату они закончат этот незаконченный фьючерс?
Тоан Нгуен
3
Поскольку на отставание Magento напрямую влияют отзывы сообщества и партнеров, любая задача может быть расставлена ​​по приоритетам и удалена, и никто не знает, когда конкретное задание будет завершено, прежде чем оно будет выполнено и опубликовано.
Канди,