ดังที่ไคลฟ์กล่าวไว้ สิ่งนี้จะเหมือนกันสำหรับ D8 และ D9 และ cache.backend.null
ถูกกำหนดไว้ใน development.services.yml ดังนั้นวิธีที่ง่ายที่สุดในการใช้งานคือการเพิ่ม development.services.yml ไปยัง ymls คอนเทนเนอร์ของคุณ
หากต้องการทำสิ่งนี้ให้เพิ่มสิ่งต่อไปนี้ใกล้กับด้านบนสุดของไฟล์การตั้งค่าของคุณ (รหัสที่นำมาจาก example.settings.local.php เริ่มต้นของ core):
/**
* เปิดใช้งานบริการพัฒนาท้องถิ่น
*/
$settings['container_yamls'][] = DRUPAL_ROOT '/sites/development.services.yml';
นอกจากนี้ example.settings.local.php บอกคุณว่าคุณต้องทำเช่นนี้เพื่อใช้ cache.backend.null:
/**
* ปิดใช้งานแคชการเรนเดอร์
*
* หมายเหตุ: คุณควรทดสอบโดยเปิดใช้งานเรนเดอร์แคชเพื่อให้แน่ใจว่าถูกต้อง
* ข้อมูลเมตาความสามารถในการแคชมีอยู่ อย่างไรก็ตามในช่วงแรกของ
* การพัฒนา คุณอาจต้องการปิดการใช้งาน
*
* การตั้งค่านี้ปิดใช้งานเรนเดอร์แคชโดยใช้แบ็กเอนด์แคช Null
* กำหนดโดยไฟล์ development.services.yml ด้านบน
*
* ใช้การตั้งค่านี้เมื่อติดตั้งไซต์แล้วเท่านั้น
*/
# $settings['cache']['bins']['render'] = 'cache.backend.null';
หากคุณไม่ต้องการใช้ไฟล์ development.services.yml เริ่มต้น ด้วยเหตุผลบางประการ คุณสามารถใช้ไฟล์ custom.services.yml แทนได้ ตราบเท่าที่ไฟล์นั้นมีข้อกำหนด cache.backend.null
ในการทำเช่นนี้ คุณจะต้องเพิ่มสิ่งต่อไปนี้ในไฟล์การตั้งค่าของคุณ:
/**
* เปิดใช้งานบริการที่กำหนดเอง
*/
$settings['container_yamls'][] = DRUPAL_ROOT '/sites/custom.services.yml';
จากนั้นในไฟล์ sites/custom.services.yml ของคุณ:
บริการ:
cache.backend.null:
คลาส: Drupal\Core\Cache\NullBackendFactory