Фабричная девушка, монгоид и вложенные документы - PullRequest
1 голос
/ 13 мая 2011

Я настраиваю свое первое приложение с Mongoid и Devise.Я пытаюсь настроить пользователя в моем тесте на этом заводе:

Factory.define(:user) do |f|
  f.email "bob1234@example.com"
  f.password "testing"
  f.password_confirmation "testing"
end

Когда я пытаюсь выполнить это, я получаю эту ошибку:

NoMethodError: undefined method `add_on_blank' for []:Array
    from /Library/Ruby/Gems/1.8/gems/mongoid-2.0.1/lib/mongoid/criteria.rb:213:in `send'
    from /Library/Ruby/Gems/1.8/gems/mongoid-2.0.1/lib/mongoid/criteria.rb:213:in `method_missing'
    from /Library/Ruby/Gems/1.8/gems/mongoid-2.0.1/lib/mongoid/relations/embedded/many.rb:373:in `send'
    from /Library/Ruby/Gems/1.8/gems/mongoid-2.0.1/lib/mongoid/relations/embedded/many.rb:373:in `method_missing'
    from /Library/Ruby/Gems/1.8/gems/mongoid-2.0.1/lib/mongoid/named_scope.rb:121:in `with_scope'
    from /Library/Ruby/Gems/1.8/gems/mongoid-2.0.1/lib/mongoid/relations/embedded/many.rb:372:in `send'
    from /Library/Ruby/Gems/1.8/gems/mongoid-2.0.1/lib/mongoid/relations/embedded/many.rb:372:in `method_missing'

Мои модели выглядят так:

Пользователь:

class User
  include Mongoid::Document
  # Include default devise modules. Others available are:
  # :token_authenticatable, :encryptable, :confirmable, :lockable, :timeoutable and :omniauthable
  devise :database_authenticatable, :registerable,
     :recoverable, :rememberable, :trackable, :validatable

  attr_accessible :email, :password, :password_confirmation, :remember_me

  embeds_many :errors
end

Ошибка:

class Error
  include Mongoid::Document
  field :klass, :type => String
  embedded_in :user
end

Как создать модель пользователя без одновременного создания вложенных документов?

...