J'ai installé une copie locale de Magento 2. Je rencontre un problème avec le module personnalisé.
J'ai suivi la structure de fichiers / dossiers suivante
app/code/Ps/HelloWorld/etc/module.xml
:
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Module/etc/module.xsd">
<module name="Ps_HelloWorld" schema_version="0.0.1" setup_version="0.0.1" />
</config>
Dans ce fichier, j'ai les éléments suivants: j'ai actualisé le cache du magasin, puis j'ai obtenu:
La version de configuration du module 'Ps_HelloWorld' n'est pas spécifiée.
magento2
magento2-dev-beta
Yogesh Karodiya
la source
la source
schema_version
puis essayezbin/magento cache:flush
de votre dossier publicRéponses:
Essayer
En supposant que vous exécutez la branche principale actuelle et non la branche de développement
la source
php -f bin/magento setup:upgrade
commandephp -f bin/magento
, soit il fournira également quel est le but de chaque commandeDans mon cas, c'était l'autorisation de fichier / dossier de ce module.
Apache n'a pas pu lire le fichier de configuration.
Appliquez l'autorisation suivante à votre répertoire de module.
la source
Source de référence: https://magentoexplorer.com/magento-2-setup-version-for-module-is-not-specified-how-to-fix (dans mon cas, j'ai eu cette erreur lors de la création d'un nouveau module Magento 2 )
Vous pouvez rencontrer cette erreur en raison d'une autorisation de fichier / dossier de module incorrecte, vous pouvez modifier l'autorisation pour le dossier de module comme suit
Il existe une autre possibilité que vous ayez oublié d'ajouter registration.php et composer.json dans le module. Essayez d'ajouter le fichier suivant
/app/code/Namespace/Module/registration.php
et /app/code/Namespace/Module/composer.json
Enfin, exécutez ces commandes
J'espère que cela t'aides!
la source
Un scénario supplémentaire où cela s'est produit pour moi était dû à une extraction du référentiel de mon projet et au retrait du module du système de fichiers. Bien que cela soit intentionnel, il restait à l'époque une configuration persistante dans le fichier de configuration de Magento.
La suppression de la référence au module a
app/etc/config.php
résolu mon problème.TL; DR
J'ai d'abord essayé de désactiver le module à l'aide de la commande de la CLI
module:disable VendorName_ModuleName
et la réponse de la CLI a étéUnknown module(s): 'VendorName_ModuleName'
. Je suppose que c'est parce qu'il était déjà absent du système de fichiers. Comme il n'était plus question d'utiliser le module, sa suppression manuelleapp/etc/config.php
à ce stade semble de toute façon appropriée.la source
Ouvrez votre base de données et trouvez la table
setup_module
.Votre module
Ps_HelloWorld
doit figurer dans ce tableau.S'il n'est pas trouvé, essayez d'entrer manuellement.
la source
Problème: le fichier a
app/etc/config.php
été copié à partir d'une autre instance de magento (en raison d'une mauvaise manipulation de fichier). Pour cette raison, j'ai eu les mêmes symptômes que ceux décrits dans cette question.La solution était de supprimer tous les noms de modules qui n'étaient pas dans l'instance de Magento où le problème s'est produit, et cela a bien fonctionné.
Notez qu'une meilleure solution aurait probablement été de le faire
bin/magento module:status
, puisbin/magento module:disable
pour tout le module en difficulté.la source