Khi ActiveRecord là một phần của ứng dụng, nó sẽ cố gắng thiết lập kết nối với cơ sở dữ liệu khi khởi động. Nếu nó không kết nối được, ứng dụng sẽ không khởi động.
Vấn đề là ở đây:
require 'rails/all'
Dòng này bao gồm tất cả các thành phần đường ray "thông thường", ActiveRecord trong số đó. Nếu bạn đi đến định nghĩa của nó, nó sẽ giống như thế này (đối với đường ray 3.2):
require "rails"
%w(
active_record
action_controller
action_mailer
active_resource
rails/test_unit
sprockets
).each do |framework|
begin
require "#{framework}/railtie"
rescue LoadError
end
end
Lấy mã này, xóa dòng active_record và thay vào đó là rails/all
của bạn hàng. Bây giờ, ActiveRecord không được bao gồm và ứng dụng của bạn sẽ bị lỗi lớn khi thấy các tham chiếu ActiveRecord trong mã, như sau:
config.active_record.mass_assignment_sanitizer = :strict
Bạn cũng cần phải loại bỏ những thứ này. Bạn không cần phải xóa database.yml, nhưng có lẽ bạn nên xóa vì nó không còn ý nghĩa gì bây giờ.