Rails3 ActiveRecord :: StatementInvalid:...每个测试都没有这样的表

时间:2010-09-15 20:32:48

标签: ruby sqlite

我几天前开始学习rails3,从今天起,每次我为我的模型运行单元测试时,都会收到以下错误消息:

  

ActiveRecord::StatementInvalid: SQLite3::SQLException: no such table: users: DELETE FROM "users" WHERE 1=1

昨天的测试顺利进行,我今天运行它们(从他们工作的时间开始将所有内容恢复到状态)......而且我仍然收到错误。

我在Windows7 64位,SQLite 3.7.2,ruby 187上使用rails 3发行版(但我确实有许多ruby安装 - 使用pik选择187)

有关解决此问题的任何想法吗?

2 个答案:

答案 0 :(得分:14)

如果您使用rails生成器创建了模型,则可能遗留了试图访问不再存在的表的fixture文件。对我来说,删除yml文件解决了这个问题。

这回答:https://stackoverflow.com/a/6222934

答案 1 :(得分:11)

值得检查您的测试数据库是否使用开发数据库中的模式正确设置。您可以通过以下方式实现此目的:

rake db:test:prepare