Tôi đã nâng cấp một trong những ứng dụng của mình từ Rails 4.2.6 lên Rails 5.0.0. Các Hướng dẫn nâng cấp nói rằng tính năng Autoload hiện đang bị vô hiệu hóa trong sản xuất theo mặc định.
Bây giờ tôi luôn gặp lỗi trên máy chủ sản xuất của mình vì tôi tải tất cả các tệp lib có tự động tải trong application.rb
tệp.
module MyApp
class Application < Rails::Application
config.autoload_paths += %W( lib/ )
end
end
Còn bây giờ, tôi đã thiết lập config.enable_dependency_loading
để true
nhưng tôi tự hỏi, nếu có một giải pháp tốt hơn cho việc này. Phải có một lý do mà Tự động tải bị tắt trong sản xuất theo mặc định.
lib
thư mục, một tệp có sẵn dễ dàng trong Thời gian chạy, nhưng một tệp khác phải được yêu cầu thủ công: D
Validators
) trong các thư mục trực tiếp trong ứng dụng / thư mục vì mã được tải tự động.
app/services/paylinx/paylinx_service.rb
Định nghĩa lớp : module Paylinx class PaylinxService end end
. Tôi đã thử những autoload_paths
thứ này . không làm việc cho tôi.