الماجنتو 2 - ما حالة استخدام di.xml وكيفية استخدام di.xml من أجل الوحدة ؟

magento.stackexchange https://magento.stackexchange.com/questions/111845

  •  29-09-2020
  •  | 
  •  

سؤال

في الماجنتو 2, ما حالة استخدام di.xml وكيفية استخدام di.xml من أجل الوحدة ؟

أي شخص يعرف أرني خطوة بخطوة.

هل كانت مفيدة؟

المحلول

What case We use di.xml ?

  • يمكننا استخدام di.xml عن ( كتابة ) تفضيل فئة معينة.
  • يمكننا أن نرسل جديدة أو استبدال القائمة فئة الحجج.
  • استخدام الإضافات للقيام ببعض الأشياء قبل وبعد حوالي وظيفة
  • باستخدام virtualTypes خلق فئة فرعية من فئة أخرى.

دعونا نأخذ مثال سريع من الماجنتو 2 وحدة العملاء.

1.تفضيل

<preference for="Magento\Customer\Api\AddressRepositoryInterface"
            type="Magento\Customer\Model\ResourceModel\AddressRepository" />

البرمجية أعلاه ، عندما يسأل شخص ما لك مثيل Magento\Customer\Api\AddressRepositoryInterface وسوف مثيل الماجنتو\العملاء\نموذج esourceModel\AddressRepository وجوه (نوع السمة).

فئة تفضيل التكوين ليس فقط على واجهات يمكننا تغيير الفئات الفعلية كذلك.

<preference for="Magento\Customer\Model\CustomerManagement"
            type="Magento\Customer\Model\customModel" />

يمكنك إنشاء 'customModel' فئة 'CustomerManagement' و هل التغييرات.فئة تفضيل النظام كبديل الدرجة كتابة النظام.

http://alanstorm.com/magento_2_object_manager_preferences

2.الحجج

<type name="Magento\Customer\Model\ResourceModel\Group" shared="false">
    <arguments>
        <argument name="groupManagement" xsi:type="object">Magento\Customer\Api\GroupManagementInterface\Proxy</argument>
    </arguments>
</type>

في ال البرمجية أعلاه ، نحن في إرسال كائن كحجة نحن نقول نظام لإدراج "الوكيل" الطبقة ككائن مع اسم groupManagement.أيضا, يمكننا استخدام الحجج استبدال القائمة الحجة أيضا.

http://alanstorm.com/magento_2_object_manager_argument_replacement

3.البرنامج المساعد

<type name="Magento\Customer\Model\ResourceModel\Visitor">
    <plugin name="catalogLog" type="Magento\Catalog\Model\Plugin\Log" />
</type>

في التعليمات البرمجية أعلاه ، public function clean($object) زائر الدرجة يسمى بعد الوظيفة العمومية afterClean(Visitor $subject, $logResourceModel) وهو في سجل الصف.

4 الظاهري أنواع

إنشاء الظاهري نوع هو نوع من مثل خلق فئة فرعية من أجل فصل موجود.

لمزيد من ملاحظة يرجى الدخول من خلال أمثلة عملية لبعض ذكرت وصلات من ألان, من خلال الممارسة يمكنك الحصول على مزيد من تجربة واضحة.

ويساعد هذا الأمل....:)

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى magento.stackexchange
scroll top