Score:1

การตั้งค่าท้องถิ่นของโหมด drupal9 dev: cache.backend.null ไม่มีอยู่

ธง za

ใน drupal9 my drupal8 local.settings.php conf สร้างข้อผิดพลาดเมื่อฉันล้างแคช

Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException: คุณมี [ข้อผิดพลาด] ร้องขอบริการที่ไม่มีอยู่จริง "cache.backend.null" คุณหมายถึงรายการใดรายการหนึ่งต่อไปนี้ "cache.backend.apcu", "cache.backend.memory", "cache.backend.php"? ใน /data-platforms/platforms/drupal9-dev/core/lib/Drupal/Component/DependencyInjection/Container.php:156

สิ่งนี้เกี่ยวข้องกับ

$settings['cache']['bins']['dynamic_page_cache'] = 'cache.backend.null';
$settings['cache']['bins']['render'] = 'cache.backend.null';
$settings['cache']['bins']['page'] = 'cache.backend.null';

ฉันต้องเปลี่ยนอะไรที่นี่สำหรับ drupal9 ?

cn flag
มันเหมือนกับ D8 คุณต้องรวม development.services.yml ไว้ในคอนเทนเนอร์ ymls ใน settings.php แล้วสร้างแคชใหม่
Score:3
ธง in

ดังที่ไคลฟ์กล่าวไว้ สิ่งนี้จะเหมือนกันสำหรับ 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

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา