Puncte:3

Cum să invalidez memoria cache a listei de blocare?

drapel cn

Trebuie să invalidez memoria cache a listei de blocuri de fiecare dată când este creată o nouă entitate de configurare, aceasta deoarece am un bloc derivat pentru a gestiona dinamic câte un bloc pentru fiecare dintre entitățile mele de configurare. Am încercat să invalidez lista blocată cu următorul cod

Drupal\Core\Cache\Cache::invalidateTags(['block_list']);

Dar când merg să văd blocurile disponibile, nu pot să văd noul meu bloc până când nu curăț toate cache-urile de pe site.

De obicei, atunci când trebuie să invalidez listele de entități din cache, folosesc Lista ENTITY-NAME_ etichetați pentru a o face, dar de data aceasta nu funcționează, poate îmi lipsește ceva aici?

Puncte:3
drapel cn

Golirea memoriei cache nu numai că invalidează memoria cache de randare, ci și multe alte cache. De exemplu, toate cache-urile de descoperire ale managerului de pluginuri.

În acest caz, probabil că trebuie să invalidați memoria cache a managerului de pluginuri de bloc:

\Drupal::service('plugin.manager.block')->clearCachedDefinitions();
drapel cn
Bun răspuns, voi ține cont de asta pentru viitor.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.