Pergunta

Recentemente magento-2.0.0-RC foi lançado e eles adicionaram registration.php em cada pasta raiz do módulo?Então, eu só quero saber se há algum motivo para isso?

Alguém pode esclarecer isso?

Foi útil?

Solução

registration.php é uma espécie de ponto de entrada do seu módulo.É o equivalente a app/etc/modules/[Namespace]_[Module].xml do Magento 1.
Mas agora faz parte do próprio módulo.
permite criar módulos no app/code pasta e no vendor pasta também.
Não importa onde você o adicione, este arquivo será coletado pelo Magento e seu módulo será levado em consideração.

Outras dicas

notei que duas coisas foram alteradas na versão Magento.1.0.0-beta (outubro) para Magento ver.2.0.0-rc2
1.Adicionado novo arquivo na pasta root do módulo chamado registro.php ex: -app code Sugarcode test registration.php

<?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 foi alterado anteriormente, somos mencionados nome do método na tag de observador no evento.xml agora o método foi removido Juts que você precisa mencionar apenas a instância que é

<?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>

e na pasta /ModuleName/Observer você precisa criar um arquivo com a função

public function execute()

aquilo é

<?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;
    }
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a magento.stackexchange
scroll top