gpt4 book ai didi

ruby-on-rails - 更改 mongoid embeds_many 关联名称

转载 作者:可可西里 更新时间:2023-11-01 09:58:19 25 4
gpt4 key购买 nike

使用 Rails 3.2 和 Mongoid 2.4。我有一个遗留模型 Organization,它嵌入了很多 organization_members。它看起来像这样:

class Organization
include Mongoid::Document

embeds_many :organization_members
end

class OrganizationMembers
include Mongoid::Document
embedded_in :organization
end

我想做的是将我用来访问成员的方法从 organization.organization_members 更改为仅 organization.members。这是我所做的:

class Organization
include Mongoid::Document

embeds_many :members, class_name:"OrganizationMember"
end

class OrganizationMembers
include Mongoid::Document
embedded_in :organization
end

但是,现在 organization.members 返回一个空数组,而 organization.organization_members 返回以前的文档,即使它没有定义 church_members。

我如何说服 Mongoid 使用以前的嵌入式集合名称并通过新方法调用(Organization#members 而不是 Organization#organization_members)访问它?

最佳答案

有一个选项 embeds_many ,称为 store_as

class Organization
include Mongoid::Document

embeds_many :members,
class_name:"OrganizationMember",
store_as: 'organization_members'
end

关于ruby-on-rails - 更改 mongoid embeds_many 关联名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11695050/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com