Монгоидная вложенная проблема has_one - PullRequest
1 голос
/ 29 августа 2011

Я пытаюсь обновить вложенную модель has_one с помощью mongoid, но она не сохранится в ассоциации has_one

я использую Rails 3.07 и Mongoid 2.2

модель виджета

class Widget
  include Mongoid::Document

  embeds_many :permissions, :default => []

end

модель разрешения

class Permission   
  include Mongoid::Document

  field :admin, :type => Boolean, :default => false  

  has_one :user

  embedded_in :widget 

end

модель пользователя

class User
  include Mongoid::Document

  belongs_to :permission

end

Вот результаты, которые я получаю из консоли rails;

@widget.permissions << Permission.new(:user => current_user)
 => [#<Permission _id: 4e5aced1c155df4b33000001, _type: nil, admin: false>]

@widget.save
 => true

@widget.permissions.first.user
 => #<User _id: 4e5ac71ec155df470f000001, _type: nil, email: "ada ..... >

Похоже, что пользователь сохранен,Однако это не сохраняется Монго.Разрешение сохраняется, но у него нет пользователя.

Есть идеи?

1 Ответ

2 голосов
/ 29 августа 2011

Должны ли вы использовать "внедренный_интерфейс", а не "принадлежащий_то" в модели пользователя?

...