我在我的 Rails 应用程序中使用 Mongoid。我有一个用户模型,我也有一个角色模型(想想管理员、访客等)。
我想设置我的 Mongoid 关联,以便可以使用以下代码:
u = User.first
u.invited_roles # returns all roles a user has been assigned
r = Role.new
r.invitee = user # user id should be stored in the Role
r.save!
目前,我的模型设置如下:
class User
include Mongoid::Document
has_many :invited_roles, :class_name => 'Role'
end
class Role
include Mongoid::Document
has_one :invitee, :class_name => 'User'
end
目前,当我Role.new
从 Rails 控制台执行此操作时,我得到一个对象,该对象似乎没有存储被邀请者用户的字段。我该如何解决?我见过有人使用 inverse_of,但我真的找不到关于这个过程的任何教程或文档。
谢谢您的帮助。