जवाबों:
registration.php
आपके मॉड्यूल के प्रवेश बिंदु की तरह है। यह app/etc/modules/[Namespace]_[Module].xml
Magento 1 से बराबर है ।
लेकिन अब, मॉड्यूल का ही हिस्सा है।
यह आपको app/code
फ़ोल्डर में और vendor
साथ ही फ़ोल्डर में मॉड्यूल बनाने की अनुमति देता है ।
कोई फर्क नहीं पड़ता कि आप इसे कहाँ जोड़ते हैं, इस फाइल को Magento द्वारा उठाया जाएगा और आपके मॉड्यूल को ध्यान में रखा जाएगा।
config.php
केवल मॉड्यूल के नाम दिखाई देते हैं और उनकी स्थिति (सक्षम / अक्षम)। मॉड्यूल के लिए कोई रास्ता नहीं है। जैसा कि मैंने उत्तर में कहा, registration.php
आपको बाहर मॉड्यूल रखने की अनुमति देता हैapp/code
मैंने देखा कि Magento ver से दो चीज़ों को बदल दिया गया था। Magento ver को 1.0.0-Beta (Oct)। 2.0.0-rc2
1. पंजीकरण के मॉड्यूल के रूट फ़ोल्डर में नई फ़ाइल को जोड़ा गया। पंजीकरण पूर्व: पूर्व-कोड \ कोड \ चीनीकोड \ परीक्षण \ पंजीकरण। एफपी
<?php
/**
* Copyright © 2015 Magento. All rights reserved.
* See COPYING.txt for license details.
*/
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::MODULE,
'Sugarcode_Test',
__DIR__
);
2. event.xml पिछली बार बदला गया था, हम घटना में पर्यवेक्षक टैग में विधि का नाम बता रहे हैं। xml अब विधि को हटा दिया गया था, आपको केवल उदाहरण का उल्लेख करने की आवश्यकता है
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/Event/etc/events.xsd">
<event name="sales_order_grid_collection_load_before">
<observer name="sales_order_grid_test" instance="Sugarcode\Test\Observer\Addtest" />
</event>
</config>
और / ModuleName / ऑब्जर्वर फोल्डर में आपको फंक्शन वाली फाइल बनाने की जरूरत है
public function execute()
अर्थात्
<?php
namespace Sugarcode\Test\Observer;
class Addtest
{
public function execute(\Magento\Framework\Event\Observer $observer)
{
$obj=$observer->getEvent()->getOrderGridCollection();
$obj->getSelect()->joinLeft(
['testt' => 'testtable'],
"(main_table.entity_id = testt.id)",
[
'testt.title as title'
]
);
//$this->printlogquery(true);
//return $obj;
}
}