Вопрос

Недавно magento-2.0.0-RC был запущен, и они добавили registration.php в каждой корневой папке модуля?Вот я просто хочу знать, есть ли для этого какая-то причина?

Может ли кто-нибудь пролить свет на это?

Это было полезно?

Решение

registration.php это своего рода точка входа вашего модуля.Это эквивалент app/etc/modules/[Namespace]_[Module].xml из Мадженто 1.
Но теперь это часть самого модуля.
он позволяет создавать модули в app/code папке и в папке vendor папка тоже.
Независимо от того, куда вы его добавите, этот файл будет подхвачен Magento и ваш модуль будет учтен.

Другие советы

Я заметил, что два вещи были изменены с Magento Ver.1.0.0-бета (октябрь) в Magento Ver.2.0.0-RC2

1. Добавлен новый файл в корневой папке модуля под названием Registing.php Ex: -App \ Code \ SugarCode \ Test \ Registract.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 был изменен Предыдущая мы упоминаем имя метода в теге Observer в Event.xml Теперь метод был удален Juts, вы должны упомянуть, только один экземпляр

<?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 / Observer необходимо создать файл с функцией

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;
    }
}
.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с magento.stackexchange
scroll top