나는 Magento 2에서 몇 가지 튜토리얼을 봤는데, 약간 혼란 스럽습니다. 비즈니스 엔터티를 읽고 쓸 수있는 두 가지 방법이 기본적으로 있습니다.
데이터 검색
팩토리 접근법 사용
$object = $this->myFactory->create();
$object->load($myId);
리포지토리 접근 방식 사용
$repo = $this->myRepository();
$object = $repo->getById($myId);
데이터를 저장
팩토리 접근법 사용
$object = $this->myFactory->create();
$object->load($myId);
$object->setData('something', 'somethingDifferent')->save();
리포지토리 접근 방식 사용
$repo = $this->myRepository();
$object = $repo->getById($myId);
$object->setData('something', 'somethingDifferent');
$repo->save($object);
또한 의존성 주입을 사용하여 저장소와 팩토리 클래스를 모두 주입 할 수 있음을 알 수 있습니다. 이것은 적어도 나를 혼란스럽게합니다.
저장소 접근 방식과 팩토리 접근 방식은 언제 사용해야합니까? 우리가 따라야 할 가장 좋은 방법은 무엇입니까?