การแคชบางส่วนเป็นวิธีที่ยอดเยี่ยมในการปรับปรุงความเร็วหน้าเว็บที่สำคัญโดยไม่ต้องทำงานมาก แต่ถ้าคุณลืม touch: true
กับหนึ่งในการเชื่อมโยงของคุณ หรือการอ้างอิงเทมเพลตของคุณทำงานไม่ถูกต้อง บางส่วนของแคชของคุณจะไม่ได้รับการอัปเดต
เนื่องจากสภาพแวดล้อมการพัฒนามักจะทำงานโดยปิดใช้งานการแคช คุณจะค้นพบสิ่งนี้ในการจัดเตรียมหรือที่แย่กว่านั้นคือการผลิต! ในการแก้ปัญหา คุณจะต้องทำซ้ำในโหมดการพัฒนาโดยการตั้งค่า
config.action_controller.perform_caching = false
ใน config/environments/development.rb
. ของคุณ ถึง true
. คุณจะต้องทำเช่นนี้ทุกครั้งที่มีการดีบักปัญหาแคช และอย่าลืมเปลี่ยนกลับก่อนที่จะเช็คอิน ฉันเกลียดที่จะทำสิ่งนั้น ดังนั้นเมื่อฉันเริ่มโครงการใหม่ ฉันตั้งค่าเป็นสิ่งนี้แทน:
config.action_controller.perform_caching = ENV['CACHING'] == 'true'
ด้วยวิธีนี้ ฉันสามารถเปิดใช้งานการแคชได้ทุกเมื่อที่ต้องการโดยเริ่มเซิร์ฟเวอร์ Rails ด้วย
CACHING=true rails server
ใช้งานเพียง rails server
จะทำงานโดยปิดใช้งานการแคชตามปกติ
เมื่อคุณเริ่มปรับแต่งพารามิเตอร์การกำหนดค่าบ่อยขึ้น รูปแบบของการเปลี่ยนพารามิเตอร์แบบฮาร์ดโค้ดให้เป็นตัวแปรสภาพแวดล้อมสามารถช่วยคุณประหยัดเวลาและเล่นซอได้มาก ลองใช้ในโครงการของคุณเอง!