Saya sedang mengerjakan modul di Drupal 8 yang mengambil data sensitif waktu dari api REST eksternal. Data diproses dan diteruskan ke Blok. Data akhir dikirim ke templat Ranting seperti:
...
public function build() {
$build = [];
$build['ticker_block'] = [
'#theme' => 'module_theme',
'#data' => $myService->data(),
];
return $build;
}
Ini tidak berfungsi pada lingkungan produksi tempat cache diaktifkan dan data yang diberikan muncul sebagai basi. Bagaimana cara menonaktifkan cache untuk modul saya saja, dan apakah saya harus melakukannya untuk templat Twig dan plugin Blokir?
Untuk menghentikan caching blok tertentu, gunakan fungsi berikut:
sumber
Nonaktifkan cache untuk halaman / tipe konten / pengontrol tertentu
Menambahkan opsi rute 'no_cache' untuk menandai respons rute sebagai tidak dapat disimpan
sumber
Untuk mencegah caching blok tertentu:
tambahkan kode di bawah ini dalam file theme_name.theme
sumber
Untuk menonaktifkan cache untuk tipe blok, preproses blok jenis itu dan atur max_age ke 0.
sumber