Si actualiza un archivo de rutas en Drupal 8, ¿cómo borra el caché?

10

Después de haber trabajado con Drupal 7 desde su lanzamiento, estoy aprendiendo Drupal 8. En este momento me doy cuenta de que cada vez que cambio algo tengo que hacer drush cache-rebuildpara que las cosas vuelvan a funcionar.

En mi VPS, esto lleva 15 segundos (y luego la carga de la página siguiente también es lenta). Tengo la sensación de que esto puede ser un mazo para romper una situación loca.

¿Hay alguna forma más eficiente de hacer que Drupal recompile las rutas (modificadas) de los {module}.routing.ymlarchivos?

artfulrobot
fuente

Respuestas:

20

Puedes usar

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

para reconstruir la información de enrutamiento sin borrar todas las cachés.

Daniel Wehner
fuente
Práctico. Solo toma 3.5s, una gran mejora, muchas gracias. Es una pena que no haya un comando drush para esto.
artfulrobot
Bastante seguro de que un PR para agregar un drush cc algo sería aceptado, es un caso de uso común. O tal vez como parte del "menú drush cc", que ya existe pero que probablemente no haga mucho en D8.
Berdir
@ Berdir ¿Esto parece relevante? pero no hace lo mismo que dice esta respuesta: github.com/drush-ops/drush/commit/…
artfulrobot
Relacionado, pero eso simplemente invalida los enlaces del menú, por lo que se trata de links.menu.yml. Parece que también debería cubrir las rutas, tareas locales y acciones locales.
Berdir
Buena idea berdir!
Daniel Wehner
8

Una alternativa a drush es la consola drupal , que luego puede usar como:

drupal router:rebuild

Lo cual es un poco menos tipeado que la drush evrespuesta (y también un poco más rápido).

Para instalar la consola drupal

curl -LSs http://drupalconsole.com/installer | php
mv console.phar /path/to/a/suitable/bin/drupal
artfulrobot
fuente
3
drush cc router    

cuando uses drush 9 haz el truco ahora :-)

andsigno82
fuente