ฉันได้อัปเกรดหนึ่งในแอปของฉันจาก Rails 4.2.6 เป็น Rails 5.0.0 อัพเกรดคู่มือกล่าวว่าคุณลักษณะ Autoload ถูกปิดใช้งานในขณะนี้ในการผลิตโดยค่าเริ่มต้น
ตอนนี้ฉันมักจะได้รับข้อผิดพลาดบนเซิร์ฟเวอร์การผลิตของฉันเนื่องจากฉันโหลดไฟล์ lib ทั้งหมดด้วย autoload ในapplication.rb
ไฟล์
module MyApp
class Application < Rails::Application
config.autoload_paths += %W( lib/ )
end
end
สำหรับตอนนี้ผมได้ตั้งconfig.enable_dependency_loading
ไปtrue
แต่ผมสงสัยว่ามีทางออกที่ดีกว่านี้ ต้องมีเหตุผลที่ทำให้การโหลดอัตโนมัติถูกปิดใช้งานในการใช้งานจริงโดยค่าเริ่มต้น
lib
dir ไฟล์หนึ่งสามารถใช้ได้อย่างง่ายดายใน Runtime แต่อีกไฟล์หนึ่งต้องใช้ด้วยตนเอง: D
Validators
) ในโฟลเดอร์โดยตรงในแอป / ไดเรกทอรีเนื่องจากมีการโหลดรหัสอัตโนมัติ
app/services/paylinx/paylinx_service.rb
module Paylinx class PaylinxService end end
ฉันลองautoload_paths
สิ่งเหล่านี้แล้ว ไม่ได้ผลสำหรับฉัน