Domanda

Ho installato una copia locale di Magento 2 nel mio XAMPP e conoscevo la nuova struttura.Ho comunque imbattuto in un problema quando si tenta di configurare un modulo di base.

Ho creato la seguente struttura file / cartella

app/code/Heirik/Test/etc/module.xml
.

All'interno di questo file ho il seguente

<?xml version="1.0"?>
<config>
    <module name="Heirik_Test" schema_version="2.0.0">
    </module>
</config>
.

Ho aggiornato la cache del negozio tuttavia quando vado a memorizzare> Configurazione> Avanzate Il modulo non è caricato nell'elenco.Secondo i devdoc più recenti non è più necessario impostare il modulo per attivo all'interno dell'XML.

So che Magento sta leggendo il modulo.xml perché se rimuovo il parametro schema_version ottenuto un errore.

È stato utile?

Soluzione

Con le ultime build di Magento questo è cambiato in

php -f bin/magento module:enable --clear-static-content Module_Name
php -f bin/magento setup:upgrade
.

Altri suggerimenti

Dopo alcuni ricerca, prova ed errore che ho localizzato la seguente risposta

Per un'istanza magenta esistente, dovrai registrare un modulo personalizzato come segue:

    .
  1. Modifica il file App / etc / config.php e aggiungi il tuo modulo e specificare il valore "1" (abilitato)
  2. quindi aggiorna la cache.

    Quindi nel mio caso ho dovuto aggiungere

    'Heirik_Test' => 1,
    
    .

    Nell'array Modules all'interno dell'app / etc / config.php

o ancora più facile, è arrivato a Mage install dir e correre:

php -f setup/index.php module-enable --modules=MODULENAME
php -f setup/index.php update
.

Quindi il mio problema quando si tenta di ottenere un modulo personalizzato per registrarsi, eseguire Magento 2.2.0 è stato che il file generato da compositore vendor/composer/autoload_files.php non è stato aggiornato quando ho eseguito l'aggiornamento del compositore.

Non importava ciò che ho fatto, aggiungendolo manualmente al config.php lo farebbe sembrare che funzionava ma dopo aver eseguito magento setup:upgrade il modulo non è più registrato e non ha eseguito script di installazione / aggiornamento. Dopo aver aggiornato il compositore correttamente e il controllo del tripple era nel autoload_files, il modulo registrato e sospirò di sollievo.

solo qualcosa di cui essere a conoscenza.Speriamo che se qualcuno ha problemi simili, questo può far luce.

Il file del modulo denominato il file di configurazione del file module.xml deve avere uno schema XML e la sua posizione XSD che convalida la struttura del file module.xml.Il valore dello schema dovrebbe essere come

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Module/etc/module.xsd"
.

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