【发布时间】:2016-09-20 14:10:16
【问题描述】:
我有一些通过多态关联连接的表...
我正在尝试找到一种方法来进行单个查询以从多个这些表中返回数据...
我的模型如下:
#profile.rb
class Profile < ActiveRecord::Base
has_many :user_profiles, dependent: :destroy
has_many :wizards, through: :user_profiles, source: :user, source_type: "Wizard"
end
#user_profile.rb
class UserProfile < ActiveRecord::Base
belongs_to :user, polymorphic: true, dependent: :destroy
belongs_to :profile
end
#wizard.rb
class Wizard < ActiveRecord::Base
has_one :user_profile, as: :user, dependent: :destroy
has_one :profile, through: :user_profile
has_one :wizard_specialization, dependent: :destroy
has_one :career, through: :wizard_specialization
end
#career.rb
class Career < ActiveRecord::Base
has_many :wizard_specializations, dependent: :destroy
has_many :wizards, through: :wizard_specializations
end
我如何编写一个联接(或 :includes)查询来返回 所有 向导的配置文件,以及他们来自 profiles 表的信息,还包括他们从careers 表通过wizard_specializations?
提前致谢。
PS:如果我可以排除 created_at 和 updated_at 之类的字段,那就太好了
【问题讨论】:
标签: ruby postgresql activerecord polymorphic-associations ruby-on-rails-4.2