我知道答案很简单,但我已经从Github下载了Michael的Hartl已完成的文件,用于他的rails教程。但是现在我拥有它,我该如何运行呢?
我正在运行rspec spec /并且基本上我已经失败了所有158个测试,它们看起来都像这样
Failure/Error: user = Factory(:user)
ActiveRecord::StatementInvalid:
Could not find table 'users'
我跑了
$ bundle install
以及
$ rake db:reset
$ rake db:migrate
因为它看起来与数据库有关。
谢谢!
答案 0 :(得分:2)
尝试运行rake db:test:prepare
答案 1 :(得分:0)
我相信您仍然需要创建一个本地mysql数据库,以及具有在其中创建表的完全权限的用户,并将应用程序配置为指向它。
您可能还需要确保安装了宝石所依赖的其他本地位。当我完成它时,我按照说明安装各种测试实用程序,这样gem就无法自行安装。我不确定它是否真的依赖任何一个,但它们确实非常棒且乐于助人。
答案 2 :(得分:0)
Rails应用程序通常配置为以下几种模式之一运行:开发,生产或测试。看看你的database.yml文件,你可能会看到每个环境指向的数据库。当您在命令提示符下运行“rake db:migrate”时,您几乎肯定会迁移开发数据库。另一方面,您的测试应该在干净的测试数据库中运行。