我正在尝试在渲染平台上部署 Ruby on Rails 项目。我在学校继承了这个项目并在那里添加了新功能。当我在生产模式下运行 Rails 应用程序时,出现以下错误,但当我在开发模式下运行应用程序时,它工作正常。 “无法加载应用程序:LoadError:无法加载此类文件——database_cleaner/active_record”。
我尝试遵循文档中的所有步骤https://render.com/docs/deploy-rails,重新安装更清洁的gem,检查兼容性,没有任何帮助
谢谢你。实际上这对我有用: 1. 在 Gemfile 中,将 database_cleaner-active_record 移出 :development 块,因此它始终会安装 2. 将 cypress_rails 初始化器中的 require 移至 return 语句之后 –
您可以采取以下几个步骤来排查和解决问题:
group :development, :test do
gem 'database_cleaner'
# Other gems...
end
bundle install
环境配置:检查您的 config/environments/production.rb 文件或相关环境 配置文件。确保 database_cleaner gem 不是 在生产环境中明确禁用或排除。
数据库清理器配置:如果您使用 database_cleaner 仅用于测试目的,请确保您的配置正确 spec_helper.rb 或 rails_helper.rb 文件,并且不会导致问题 生产环境。
rails_helper.rb中的示例配置:
# rails_helper.rb
RSpec.configure do |config|
# Other configurations...
config.before(:suite) do
DatabaseCleaner.strategy = :truncation
end
config.before(:each) do
DatabaseCleaner.start
end
config.after(:each) do
DatabaseCleaner.clean
end
end
注意:确保您使用的database_cleaner版本与您的Rails版本兼容。