Puncte:1

Adăugați un obiect de configurare simplu ca dependență stocabilă în cache?

drapel in

Construiesc un breadcrumb personalizat care are unele setări de administrare dintr-un modul din Drupal 9. Când acel formular de setări este salvat, vreau ca orice breadcrumb cache care a fost construit cu acest constructor să fie invalidat.

Am încercat să trec obiectul meu de configurare în constructor ca atare:

$breadcrumb->addCacheableDependency($this->config);

Numai când salvez formularul, pesmetul servește versiunea stocată în cache până când îl șterg. Apoi arată pesmetul potrivit. Constructorul meu are:

  funcția publică __construct(
    AdminContext $admin_context,
    AliasManagerInterface $alias_manager,
    EntityTypeManagerInterface $entity_type_manager,
    ConfigFactoryInterface $config_factory
  ) {
    $this->adminContext = $admin_context;
    $this->aliasManager = $alias_manager;
    $this->entityTypeManager = $entity_type_manager;
    $this->config = $config_factory->get('mymodule.settings');
  }
Puncte:0
drapel cn

Pentru a răspunde la întrebare. Da, acesta este modul corect.

Puteți verifica dacă eticheta cache config:* este transmis variabilelor de bloc:

funcția mymodule_preprocess_block__system_breadcrumb_block(&$variabile) {
  var_dump($variables['conținut']['#cache']);
}

Atunci poate fi doar o problemă cu șablonul care nu redă întregul conținut al conţinut variabil.

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.