質問

最近magento-2.0.0-RCが起動され、それらはすべてのモジュールルートフォルダにregistration.phpを追加しましたか?だから私はただそれの理由がありますか?

誰かがこれに光を置くことができますか?

役に立ちましたか?

解決

registration.phpはモジュールのエントリポイントの種類です。Magentoのapp/etc/modules/[Namespace]_[Module].xmlと同等です。
しかし今、モジュール自体の一部です。
app/codeフォルダとvendorフォルダにもモジュールを作成できます。
あなたがそれを追加しても、このファイルはMagentoによって拾われ、あなたのモジュールは考慮されます。

他のヒント

私は2つのことがMagento Verから変更されたことに気づいた。1.0.0 - ベータ(OCT)からMagento Ver。2.0.0-RC2
1. registration.phpというモジュールのルートフォルダに新しいファイルを追加しました EX:-app \ code \ sugarcode \ test \ recation.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が変更されました 前へevent.xmlのObserverタグのメソッド名は、

の場合だけに言及する必要があるJUTを削除しました
<?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>
.

およびIN / 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