【发布时间】:2011-08-28 23:40:00
【问题描述】:
我正在尝试使用 mongoid 更新嵌套的 has_one 模型,但它不会保留 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 ..... >
看起来好像用户被保存了,但是它没有持久化到 mongo。 权限正在保存,但没有用户。
有什么想法吗?
【问题讨论】:
标签: ruby-on-rails mongoid