ruby – Mongoid:不止一次引用相同模型has_many

ruby – Mongoid:不止一次引用相同模型has_many,第1张

概述我希望能够在同一个模型中多次引用模型(has_many关系).例如,给定以下模型: class MyModel include Mongoid::Document field :name, type: String has_many :main_efforts, :class_name => 'Effort', as: :effortable, dependent: :d 我希望能够在同一个模型中多次引用模型(has_many关系).例如,给定以下模型:

class MyModel    include MongoID::document    fIEld :name,type: String    has_many :main_efforts,:class_name => 'Effort',as: :effortable,dependent: :delete,autosave: true    has_many :secondary_efforts,autosave: true    valIDates_presence_of :nameendclass Effort    include MongoID::document    fIEld :name,type: String    belongs_to :effortable,polymorphic: true    valIDates_presence_of :nameend

如您所见,Effort模型被引用两次.最初,我的Effort模型不是多态的,但似乎MongoID无法确定努力属于哪个集合(main_efforts或secondary_efforts).因此,我把它变成了多态的.但是,在使其成为多态之后,我的main_efforts和secondary_efforts字段始终是一个空数组.

在同一模型中多次引用多态模型的正确方法是什么(假设需要多态模型)?

@R_404_6120@ 弄清楚了:

class MyModel    include MongoID::document    fIEld :name,autosave: true,:inverse_of => :main_effort    has_many :secondary_efforts,:inverse_of => :secondary_effort    valIDates_presence_of :nameendclass Effort    include MongoID::document    fIEld :name,type: String    belongs_to :main_effort,:class_name => 'Conop',:inverse_of => :main_efforts    belongs_to :secondary_effort,:inverse_of => :secondary_efforts    valIDates_presence_of :nameend
总结

以上是内存溢出为你收集整理的ruby – Mongoid:不止一次引用相同模型has_many全部内容,希望文章能够帮你解决ruby – Mongoid:不止一次引用相同模型has_many所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1290572.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-09
下一篇2022-06-09

发表评论

登录后才能评论

评论列表(0条)

    保存