Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails RoR Hobo:找不到表_Ruby On Rails_Ruby_Subclass_Hobo - Fatal编程技术网

Ruby on rails RoR Hobo:找不到表

Ruby on rails RoR Hobo:找不到表,ruby-on-rails,ruby,subclass,hobo,Ruby On Rails,Ruby,Subclass,Hobo,所以我试图在我的一个模型中添加一个子类,然后为它创建一个fixture并进行测试,但我似乎在这一过程中遇到了错误。我真的不知道如何描述这个问题,但我通过以下步骤重新创建了它。如果你想让我对这个问题补充什么,请提问 控制台 $ hobo new lab --setup $ cd lab $ hobo g model foo num:integer $ hobo g migration $ rake test IDE IDE 错误 拿出你的固定装置。 由于Bar是Foo的一个子类,它将使用Fo

所以我试图在我的一个模型中添加一个子类,然后为它创建一个fixture并进行测试,但我似乎在这一过程中遇到了错误。我真的不知道如何描述这个问题,但我通过以下步骤重新创建了它。如果你想让我对这个问题补充什么,请提问

控制台

$ hobo new lab --setup
$ cd lab
$ hobo g model foo num:integer
$ hobo g migration
$ rake test
IDE

IDE

错误

拿出你的固定装置。
由于Bar是Foo的一个子类,它将使用Foos夹具。

您创建了数据库吗?RAILS\u ENV=test rake db:create最终添加一个RAILS\u ENV=test rake db:migrateI还没有。我把我所做的一切都贴出来了。所以我只需要在控制台中键入它?$RAILS_ENV=test rake db:create$RAILS_ENV=test rake db:migratejust第一个命令应该在您的DBMS中创建数据库,db:migrate将执行架构表中未引用的所有迁移。因此显然db/test.sqlite3已经存在,没有任何更改。
#create test/fixtures/bars.yml
bar_one:
  num: 1

#create test/unit/bar_test.rb
require 'test_helper'
class BarTest < ActiveSupport::TestCase
  def test_bar
    puts Bar.first.do_foo
    assert true
  end
end
$ rake test
1) Error:
test_bar(BarTest):
ActiveRecord::StatementInvalid: Could not find table 'bars'