Magento 2.1 में, कुल 25 यूआई घटक लिस्टिंग / ग्रिड डेटा प्रदाता कॉन्फ़िगर और उपयोग में हैं। उनके डेटा प्रदाता कक्षाएं और ui_component
फाइलें नीचे सूचीबद्ध हैं
Magento\Bundle\Ui\DataProvider\Product\BundleDataProvider bundle_product_listing.xmlMagento\Catalog\Ui\DataProvider\Product\Attributes\Listing product_attributes_grid.xml
Magento\Catalog\Ui\DataProvider\Product\ProductCustomOptionsDataProvider product_custom_options_listing.xml
Magento\Catalog\Ui\DataProvider\Product\ProductDataProvider configurable_associated_product_listing.xml
Magento\Catalog\Ui\DataProvider\Product\ProductDataProvider product_listing.xml
Magento\Catalog\Ui\DataProvider\Product\Related\CrossSellDataProvider crosssell_product_listing.xml
Magento\Catalog\Ui\DataProvider\Product\Related\RelatedDataProvider related_product_listing.xml
Magento\Catalog\Ui\DataProvider\Product\Related\UpSellDataProvider upsell_product_listing.xml
Magento\Cms\Ui\Component\DataProvider cms_block_listing.xml
Magento\Cms\Ui\Component\DataProvider cms_page_listing.xml
Magento\ConfigurableProduct\Ui\DataProvider\Attributes product_attributes_listing.xml
Magento\Customer\Ui\Component\DataProvider customer_listing.xml
Magento\Framework\View\Element\UiComponent\DataProvider\DataProvider customer_online_grid.xml
Magento\Framework\View\Element\UiComponent\DataProvider\DataProvider sales_order_creditmemo_grid.xml
Magento\Framework\View\Element\UiComponent\DataProvider\DataProvider sales_order_grid.xml
Magento\Framework\View\Element\UiComponent\DataProvider\DataProvider sales_order_invoice_grid.xml
Magento\Framework\View\Element\UiComponent\DataProvider\DataProvider sales_order_shipment_grid.xml
Magento\Framework\View\Element\UiComponent\DataProvider\DataProvider sales_order_view_creditmemo_grid.xml
Magento\Framework\View\Element\UiComponent\DataProvider\DataProvider sales_order_view_invoice_grid.xml
Magento\Framework\View\Element\UiComponent\DataProvider\DataProvider sales_order_view_shipment_grid.xml
Magento\Framework\View\Element\UiComponent\DataProvider\DataProvider search_synonyms_grid.xml
BraintreeTransactionsDataProvider (virtual type) braintree_report.xml
Magento\Framework\View\Element\UiComponent\DataProvider\DataProvider
Magento\GroupedProduct\Ui\DataProvider\Product\GroupedProductDataProvider grouped_product_listing.xml
Magento\Review\Ui\DataProvider\Product\ReviewDataProvider review_listing.xml
Magento\Theme\Ui\Component\Design\Config\DataProvider design_config_listing.xml
इस जानकारी के आधार पर, दो प्रतीत होते हैं बेस क्लास एंड यूज़र प्रोग्रामर्स का उपयोग अपने ग्रिड कंपोनेंट्स को बेस करने के लिए किया जा सकता है
- Magento \ फ्रेमवर्क \ देखें \ तत्व \ UIComponent \ dataProvider \ dataProvider
- Magento \ Ui \ dataProvider \ AbstractDataProvider
Magento\Ui\DataProvider\AbstractDataProvider
कक्षा दो की सरल लगता है, और (करने लगता है?) केवल एक Magento संसाधन मॉडल के विन्यास की आवश्यकता है। ग्राहक ग्रिड Magento\Customer\Ui\Component\DataProvider
मॉड्यूल इस वर्ग पर आधारित है, और ग्रिड लिस्टिंग के लिए आवश्यक सभी छंटाई, छानने, आदि की कार्यक्षमता प्रतीत होती है।
क्या कोई कारण Magento\Framework\View\Element\UiComponent\DataProvider\DataProvider
मौजूद है - या यह सिर्फ पुराने / नए कोड है जो डेटा प्रदाता बनाने के लिए एक अलग दृष्टिकोण लेते हैं? दूसरे शब्दों में, क्या Magento\Framework\View\Element\UiComponent\DataProvider\DataProvider
तालिका में किसी भी अतिरिक्त सुविधाओं को लाने का उपयोग किया जाता है, या सिस्टम के अन्य हिस्सों को ग्रिड के साथ काम करने में सक्षम बनाता है ? स्रोत कोड को देखते हुए, Magento\Framework\App\RequestInterface
पेचीदा लगता है - जैसा कि इसका मतलब है कि आप इन ग्रिडों के साथ "मुफ्त में" कार्यक्षमता की रिपोर्ट कर सकते हैं। हालांकि, एक व्यापक कोड सफारी के बिना, मुझे यकीन नहीं है कि यह सच है या नहीं, और मैं उम्मीद कर रहा हूं कि किसी को स्पष्ट स्पष्टीकरण है कि आप दूसरे पर एक वर्ग का उपयोग क्यों करेंगे।