【发布时间】:2019-12-12 11:12:48
【问题描述】:
在构建的示例应用程序 (Michael Hartl Rails 5) 上在 Rails 上运行测试,运行测试时出现上述错误,这表明它找不到表“用户”,它在我的 db 迁移文件夹中可用在 development.sqlite3 文件中列出,所以不确定是什么问题
尝试了运行 rake db:test:prepare、rails db:migrate:reset 测试的推荐修复程序,以查看 User.new(name: 'foo') 创建用户是否都没有解决问题,而后者在控制台所以无法理解为什么找不到表
_create_users.rb
def change
create_table :users do |t|
t.string :name
t.string :email
t.timestamps
end
end
end
在尝试“rails test:mailers”时运行错误的测试,在使用“rails test”时会运行更多
【问题讨论】:
-
在我生成以下内容之前正在工作:
'rails generate migration add_reset_to_users reset_digest:stringreset_sent_at:datetime'这造成了一个问题,我相信是因为缺少空间,所以我运行了这个:'rails generate migration add_reset_to_users reset_digest:string reset_sent_at:datetime'& 然后'rails generate migration add_reset_sent_at_to_users reset_sent_at:datetime'修复了上一个问题,但现在测试不起作用 -
你的“不工作”是什么意思,你能详细说明你的问题吗?
-
当使用
rails test:mailers运行测试时,它会出现上述错误,并且其他帖子中建议的修复并没有解决问题: -
ERROR["test_account_activation", UserMailerTest, 0.21548007300043537] test_account_activation#UserMailerTest (0.22s) ActiveRecord::StatementInvalid: ActiveRecord::StatementInvalid: 找不到表'users'
标签: ruby ruby-on-rails-5