En Drupal 7, solíamos poder hacer esto:
cache_clear_all('state:', 'cache', TRUE)
que eliminaría cualquier entrada de bin de caché que comenzara con la cadena state:
(ID de caché coincidentes como state:info
y state:nebraska
).
El registro de cambios en https://www.drupal.org/node/1272696 incluso señala este caso de uso en el ejemplo de Drupal 7, pero en realidad no proporciona un ejemplo de cómo replicarlo en D8.
Parece que se supone que debemos usar etiquetas de caché, lo que parece una conversión más costosa teniendo en cuenta el caso de uso simple. No veo ningún método coincidente que se aplique en CacheBackendInterface . Tenga en cuenta que no se trata de eliminar todos los elementos en un contenedor de caché, que está claramente cubierto por deleteAll ().
'entity_bundle_extra_fields:node:article:' . $langcode
para todos los idiomas? Podría obtener una lista de todos los idiomas, pero ¿hay algo más simple? En este caso ya tiene una etiqueta de caché, 'entity_field_info'. Pero tal vez quiero invalidar menos amplio.