Si vous mettez à jour un fichier de routes dans Drupal 8, comment effacez-vous le cache?


10

Ayant travaillé avec Drupal 7 depuis son lancement, j'apprends Drupal 8. Pour le moment, je constate que chaque fois que je change quelque chose, je dois faire drush cache-rebuildpour que les choses fonctionnent à nouveau.

Sur mon VPS, cela prend 15 secondes (puis le chargement de la page suivante est également lent). J'ai le sentiment que cela peut être un marteau de traîneau pour casser une situation de noix.

Existe-t-il un moyen plus efficace pour que Drupal recompile les routes (modifiées) à partir des {module}.routing.ymlfichiers?

Réponses:


20

Vous pouvez utiliser

drush ev '\Drupal::service("router.builder")->rebuild();'

pour reconstruire les informations de routage sans effacer tous les caches.


Pratique. Ne prend que 3,5 secondes, une grande amélioration, merci beaucoup. Dommage qu'il n'y ait pas de commande drush pour cela.
artfulrobot

Je suis presque sûr qu'un PR pour ajouter quelque chose de drush cc serait accepté, c'est un cas d'utilisation courant. Ou peut-être dans le cadre du "menu drush cc", qui existe déjà mais ne fait probablement pas grand-chose en D8.
Berdir

@Berdir Cela semble pertinent? mais cela ne fait pas la même chose que cette réponse dit: github.com/drush-ops/drush/commit/…
artfulrobot

Associé, mais cela invalide simplement les liens du menu, il s'agit donc de links.menu.yml. Il semble que cela devrait également couvrir les itinéraires, les tâches locales et les actions locales.
Berdir

Bonne idée berdir!
Daniel Wehner

8

Une alternative à drush est la console drupal , que vous pouvez ensuite utiliser comme:

drupal router:rebuild

Ce qui est un peu moins de frappe que la drush evréponse (et un peu plus rapide aussi).

Pour installer la console Drupal

curl -LSs http://drupalconsole.com/installer | php
mv console.phar /path/to/a/suitable/bin/drupal

3
drush cc router    

lors de l'utilisation de drush 9, faites le tour maintenant :-)

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.