Si vous avez activé un ou plusieurs modules, vous devrez exécuter magento setup:upgrade
pour mettre à jour le schéma de la base de données.
Par défaut, magento setup:upgrade
efface le code compilé et le cache. En règle générale, vous utilisez magento setup:upgrade
pour mettre à jour des composants et chaque composant peut nécessiter différentes classes compilées.
magento setup:upgrade --keep-generated
L' --keep-generated
option facultative ne doit être utilisée que dans des circonstances limitées par des intégrateurs de systèmes expérimentés. --keep-generated
ne doit jamais être utilisé dans un environnement de développement.
Une mauvaise utilisation de ce paramètre facultatif peut provoquer des erreurs lors de l'exécution du code.
MISE À JOUR (07/10/17)
Comme me l'a demandé le créateur du sujet:
Mais c'est tellement étrange pour moi, car chaque fois que je fais des changements, ils ne seront visibles qu'après avoir exécuté la commande setup: upgrade. Même si je supprime le var / cache, ce n'est toujours pas visible. Connaissez-vous une raison à cela?
var/cache
dans Magento 2 ne suffit pas pour rendre les modifications visibles comme Magento 1. Dans Magento 2, vous devrez effacer var/generation
(et var/di
si vous avez compilé du code) après avoir apporté des modifications à l'intérieur de votre code, en particulier chaque fois que vous changez quelque chose à l'intérieur du constructeur.
Vous devrez également effacer var/view_preprocessed
si vous modifiez quelque chose dans votre fichier modèle (.phtml)
Le reste ira à var/cache
etvar/full_page_cache
J'espère que cela t'aides.
setup:upgrade
commande les efface pour vous. Regardez cette page pour référence. Je suppose que votre module est activé; sinon, cela cause également des problèmes.Lorsque vous activez les modules, changez la version des modules que vous devrez exécuter
magento setup:upgrade
pour mettre à jour le schéma de la base de données.Dans d'autres cas, lorsque vous ajoutez de nouvelles données dans vos constructeurs de classe, vous devez exécuter
magento setup:upgrade
car il efface le dossier var / generation. Pour le comprendre, supprimez les autorisations d'écriture et de lecture pour levar
dossier et exécutez la commandemagento setup:upgrade
Vous obtiendrez un message d'erreur comme celui-ci
Command line user does not have read and write permissions on var/generation directory. Please address this issue before using Magento command line.
signifiant que cette commande efface le dossier var / generation. Si vous souhaitez obtenir vos modifications sans exécuter demagento setup:upgrade
commande, vous devez effacer ces trois dossiersrm -rf var/cache/* var/page_cache/* var/generation/*
la source