Domanda

Secondo magento2 doc Per impostazione predefinita, quando si installa un pacchetto, il compositore lo mette in directory vendor/<package>, ad esempio vendor/magento-module-catalog.Tuttavia, il quadro magento richiede che i componenti magentani siano in luoghi diversi, come app/code/Magento/Catalog.Il processo di copia o spostamento del contenuto dei pacchetti da impostazione predefinita alla posizione necessaria si chiama Marshalling.

Qual è il vantaggio di copiarlo in vendor/<package> prima e poi spostarlo in qualcosa come app/code/Magento/Catalog?

È stato utile?

Soluzione

Sembra che diverse cose cambiano con alcuni ultimi cambiamenti (7 ottobre) nel ramo di sviluppo.Ho creato due esempi di installazione di moduli.Uno che copia i file in app / codice e un altro che registra il modulo in cui risiede nella directory del fornitore.

Strategia di copia: https://github.com/mttjohnson/magento2-sample-Module-minimal-copy
Strategia di registrazione: https://github.com/mttjohnson/magento2-sample-module-Registro minimal

Per scopi di sviluppo Penso che l'utilizzo della strategia di registrazione sia più utile perché i file che vengono gestiti da Magento possono essere modificati direttamente, testati e poi si sono impegnati sul repo del modulo.

Altri suggerimenti

Non ci sono vantaggi (eccetto la semplicità di sviluppo, possiamo cartella hardcode app / codice in test, utils, ecc.), È requisito legacy da M1 per mettere i moduli nella cartella App / Code.

Ma ora, possiamo inserire i componenti nella cartella del fornitore e utilizzare il meccanismo di autoloading per registrarlo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a magento.stackexchange
scroll top