ActiveRecord :: Fixture :: FixtureError:table" users"没有名为" monkey"

时间:2017-06-07 18:37:43

标签: ruby-on-rails ruby-on-rails-4 fixtures

您好我刚开始使用rails进行编码,遵循Michael Hartl教程,我在为我的应用编写测试时遇到此错误,test/fixtures/users.yml上的我的夹具是:

# Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/FixtureSet.html

marwane:
  name: Marwane Chahoud
  email: marwane.chahoud@gmail.com
  password_digest: <%= User.digest('password') %>

  monkey:
  name: Sterling Archer
  email: sterling.archer@strange.com
  password_digest: <%= User.digest('password') %>

我的数据库架构是:db/migrate/xxxxxx_create_users.rb

class CreateUsers < ActiveRecord::Migration
  def change
    create_table :users do |t|
      t.string :name
      t.string :email

      t.timestamps null: false
    end
  end
end

我使用的是ruby版本:ruby 2.2.4p230 (2015-12-16 revision 53155) [i386-mingw32] 和rails版本:Rails 4.2.6

有什么建议吗?

1 个答案:

答案 0 :(得分:3)

  

ActiveRecord :: Fixture :: FixtureError:表“users”没有命名列   “猴子”

我认为是由于缩进问题 YAML文件在缩进中是严格的。它应该是

marwane:
  name: Marwane Chahoud
  email: marwane.chahoud@gmail.com
  password_digest: <%= User.digest('password') %>

monkey:
  name: Sterling Archer
  email: sterling.archer@strange.com
  password_digest: <%= User.digest('password') %>

由于 monkey: 错误地缩进,因此将其视为属性,错误也是如此。