В настоящее время у меня есть таблица User
со столбцом toys_owned
, который является встроенным документом. Как мне установить nil / изменить внедренный документ в моей консоли rails? В настоящее время он дает мне NoMethodError
, когда я пытаюсь установить его на nil
.
Примечание: я стараюсь по возможности избегать использования оболочки монго
приложение / модели / toysOwned.rb
class ToysOwned
include Mongoid::Document
embedded_in :user, :inverse_of => :toys_owned
referenced_in :toy
end
Консоль Rails:
User.where(email: "john1433@aol.com").first.toys_owned
=> [#<ToysOwned _id: 7e5s72d19gb23f0001203025, toy_id: BSON::ObjectId('6g46af0g2ffchc000100003d')>]
ruby-1.9.2-p290 :049 > u = User.where(email: "john1433@aol.com").first.toys_owned.first
=> #<ToysOwned _id: 7e5s72d19gb23f0001203025, toy_id: BSON::ObjectId('6g46af0g2ffchc000100003d')>
ruby-1.9.2-p290 :051 > u = nil
=> nil
ruby-1.9.2-p290 :052 > u.save
NoMethodError: undefined method `save' for nil:NilClass
app / models / user.rb (некоторые из них)
class User
include Mongoid::Document
include Mongoid::Timestamps
include ToyOwnable
...520 lines of code...
end