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/59671558ecdab652b40db2d1a7c63d5b1dea092/app/code/Magento/Cms/Mourceel/ResourceModel/Block.php

मूल रूप से सभी सीआरयूडी संचालन स्पष्ट रूप से कक्षा में घोषित किए जाते हैं और कक्षा के लिए स्थगित कर दिए जाते हैं EntityManager2.1 से पहले, मूल विधि को वंशानुक्रम के माध्यम से बुलाया गया था।

तो मेरे सवाल हैं:

  • EntityManager2.1 से अधिक पूर्व विरासत प्रणाली के क्या लाभ हैं ?
  • है बस CRUD तरीकों पर्याप्त (ऊपर के उदाहरण की तरह) की घोषणा के एक कस्टम CRUD मॉड्यूल में यह लागू करने शुरू करने या वहाँ अधिक है के लिए?

1
उत्तर नहीं है - लेकिन मैं EntityManager का उपयोग करने के लाभों में से एक को खतरा होगा, एक रिपॉजिटरी प्रकार प्रणाली के संभावित इंजेक्शन के लिए क्षमता होगी - जहां लोडिंग डीबी को हिट करने के बजाय इन-मेमोरी में हो सकती है यदि इकाई को पहले ही खींच लिया गया हो। मेमोरी, इत्यादि
नेवोर जूल

जवाबों:


16

वर्तमान में, हम आपकी संस्थाओं के लिए EntityManager का उपयोग करने की अनुशंसा नहीं करते हैं क्योंकि यह एक अधूरी विशेषता है और हम कॉन्फ़िगरेशन को अधिक घोषणात्मक बनाने की योजना बनाते हैं।

EntityManager के विचार हैं:

  • इंटरफ़ेस द्वारा डेटा एंटिटी को बनाए रखने की अनुमति दें (अमूर्त वर्गों से विस्तार की आवश्यकता नहीं है)
  • लगातार स्पष्ट एक्स्टेंसिबल बनाते हैं
  • प्रतिरूपकता

इसके लिए धन्यवाद कि क्या आप अपने उत्तर को इस कारण से जोड़ सकते हैं कि आप इसका उपयोग करने की अनुशंसा क्यों नहीं करते? (अधूरा सुविधा, छोटी गाड़ी, अन्य?)
डिजिटल पियानोवाद पर राफेल

1
हां, अधूरा वायदा, हम विन्यास को और अधिक घोषणात्मक बनाने की योजना बनाते हैं
KAndy

4
मूर एक्सएमएल, एमओएआर! :)
नेवरमाइंड

क्या हम जान सकते हैं कि इस अधूरे वायदे को पूरा करने की अपेक्षित तारीख क्या है?
तोन गुयेन

3
क्योंकि मैगेंटो बैकलॉग सीधे तौर पर समुदाय और साझेदारों के फीडबैक से प्रभावित होता है, किसी भी कार्य को प्राथमिकता दी जा सकती है और उसे वंचित किया जा सकता है और किसी को पता नहीं होता है कि ठोस कार्य कब पूरा होगा, और प्रकाशित होने से पहले।
कांदी
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.