ruby-on-rails - 消息:失败/错误:需要 File.expand_path('../config/environment', __dir__)
问题描述
我正在使用 Rails 6.1 和 Ruby 3.0,除了这个错误之外,每当我在 article_spec.rb 上运行 rspec 时,我也会收到关于未初始化常量设计的错误。
article_spec.rb 看起来像这样:
require 'rails_helper'
RSpec.describe Article, type: :model do
# let(:user) { User.create(email: 'levi@gmail.com', password: '123456', password_confirmation: '123456', username:"levi") }
let(:article) { Article.create(user_id:1, title:"Mike likes big muscles", text: "Big muscles like Mike" ) }
it "is valid with valid attributes" do
expect(Article.new).not_to be_valid
end
end
这是完整的跟踪:
An error occurred while loading ./spec/models/article_spec.rb.
Failure/Error: require File.expand_path('../config/environment', __dir__)
NameError:
uninitialized constant Devise
# ./config/initializers/devise.rb:11:in `<main>'
# /Users/niko/.gem/ruby/3.0.0/gems/bootsnap-1.7.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:59:in `load'
# /Users/niko/.gem/ruby/3.0.0/gems/bootsnap-1.7.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:59:in `load'
# /Users/niko/.gem/ruby/3.0.0/gems/railties-6.1.3.2/lib/rails/engine.rb:681:in `block in load_config_initializer'
# /Users/niko/.gem/ruby/3.0.0/gems/activesupport-6.1.3.2/lib/active_support/notifications.rb:205:in `instrument'
# /Users/niko/.gem/ruby/3.0.0/gems/railties-6.1.3.2/lib/rails/engine.rb:680:in `load_config_initializer'
# /Users/niko/.gem/ruby/3.0.0/gems/railties-6.1.3.2/lib/rails/engine.rb:634:in `block (2 levels) in <class:Engine>'
# /Users/niko/.gem/ruby/3.0.0/gems/railties-6.1.3.2/lib/rails/engine.rb:633:in `each'
# /Users/niko/.gem/ruby/3.0.0/gems/railties-6.1.3.2/lib/rails/engine.rb:633:in `block in <class:Engine>'
# /Users/niko/.gem/ruby/3.0.0/gems/railties-6.1.3.2/lib/rails/initializable.rb:32:in `instance_exec'
# /Users/niko/.gem/ruby/3.0.0/gems/railties-6.1.3.2/lib/rails/initializable.rb:32:in `run'
# /Users/niko/.gem/ruby/3.0.0/gems/railties-6.1.3.2/lib/rails/initializable.rb:61:in `block in run_initializers'
# /Users/niko/.gem/ruby/3.0.0/gems/railties-6.1.3.2/lib/rails/initializable.rb:50:in `each'
# /Users/niko/.gem/ruby/3.0.0/gems/railties-6.1.3.2/lib/rails/initializable.rb:50:in `tsort_each_child'
# /Users/niko/.gem/ruby/3.0.0/gems/railties-6.1.3.2/lib/rails/initializable.rb:60:in `run_initializers'
# /Users/niko/.gem/ruby/3.0.0/gems/railties-6.1.3.2/lib/rails/application.rb:384:in `initialize!'
# ./config/environment.rb:5:in `<top (required)>'
# ./spec/rails_helper.rb:4:in `<top (required)>'
# ./spec/models/article_spec.rb:1:in `<top (required)>'
解决方案
推荐阅读
- python - 如何在 Mac OS Big Sur/Jupyter 笔记本上运行 GPU
- css - 修复了 iOS 设备上书写模式被切断的元素
- amazon-web-services - CloudFormation 模板中要纠正的错误
- groovy - Jenkins groovy writeYaml方法:写入yaml文件时用三引号替换单引号
- python - 如何使用 csv.DictWriter 跳过空单元格
- excel - waitforsingleobject 在 64 位 vba 上不起作用
- javascript - 全局字体系列不适用于按钮
- c# - 使用 NSubstitute 模拟 Masstransit 的 GetRetryAttempt()
- amazon-ec2 - 如何使用 gitlab yml 文件发布我的 .net 核心代码并在 AWS Windows 实例中部署
- python - 如何使用 Python 将边界框坐标转换为 Yolo 坐标?