Tôi đã trải qua một vài hướng dẫn trong Magento 2, và điều này làm tôi bối rối một chút. Tôi có thể thấy về cơ bản có hai cách để chúng ta có thể đọc / ghi các thực thể kinh doanh:
Khôi phục dữ liệu
Sử dụng phương pháp tiếp cận nhà máy
$object = $this->myFactory->create();
$object->load($myId);
Sử dụng phương pháp lưu trữ
$repo = $this->myRepository();
$object = $repo->getById($myId);
Lưu dữ liệu
Sử dụng phương pháp tiếp cận nhà máy
$object = $this->myFactory->create();
$object->load($myId);
$object->setData('something', 'somethingDifferent')->save();
Sử dụng phương pháp lưu trữ
$repo = $this->myRepository();
$object = $repo->getById($myId);
$object->setData('something', 'somethingDifferent');
$repo->save($object);
Tôi cũng có thể thấy rằng, cả kho lưu trữ và lớp nhà máy đều có thể được tiêm bằng cách sử dụng phép nội xạ phụ thuộc. Điều này ít gây nhầm lẫn cho tôi.
Khi nào chúng ta nên sử dụng cách tiếp cận kho lưu trữ và cách tiếp cận nhà máy? Thực hành tốt nhất chúng ta cần phải làm theo là gì?