воскресенье, 17 июля 2011 г.

Re: Mongoid - проблема с сохранением embedded-объекта

У меня такая проблема была с has_many. Помог autosave:true. 
Те embeds_one :cart, autosave: true


Sent from my iPad

On 18.07.2011, at 0:53, proton <psavichev@gmail.com> wrote:

class Order
  include Mongoid::Document
  include Mongoid::Timestamps
  embeds_one :cart
end

class Cart
  include Mongoid::Document
  include Mongoid::Timestamps
  embedded_in :order
  embeds_many :cart_items
  field :price, :type => Money, :default => 0.dollars
end

@order = Order.new
 => #<Order _id: 4e158d6e852488500d000001, _type: nil, created_at: nil, updated_at: nil, person_name: nil, email: nil, comment: nil, state: :unformed, pay_method: nil> 
@order.build_cart
 => #<Cart _id: 4e158d78852488500d000002, _type: nil, created_at: nil, updated_at: nil, price: 0> 
@order.save
MONGODB webra_development['orders'].insert([{"_id"=>BSON::ObjectId('4e158d6e852488500d000001'), "updated_at"=>2011-07-07 10:42:22 UTC, "created_at"=>2011-07-07 10:42:22 UTC}])
 => true 

Как видно, Order сохраняется без корзины.
Причём @order.create_cart работает без проблем.

Куда смотреть? Что я делаю не так?

--
--
Данное сообщение отправлено Вам, так как Вы являетесь подписчиком группы "RubyOnRails to russian" на группах Google.
FAQ группы находится по адресу: http://ru.wikibooks.org/wiki/RubyFAQ
 
Для того, чтобы отправить сообщение в эту группу, пошлите его по адресу
ror2ru@googlegroups.com
Чтобы отменить подписку на эту группу, отправьте сообщение по адресу: ror2ru-unsubscribe@googlegroups.com
Дополнительные варианты находятся на странице группы http://groups.google.com/group/ror2ru?hl=ru

Комментариев нет:

Отправить комментарий