ruby-on-rails – Rails has_many通过查询,具体取决于through ta
发布时间:2020-12-17 04:33:22 所属栏目:百科 来源:网络整理
导读:有一些has_many通过查询的问题. 使用此处的示例:http://guides.rubyonrails.org/association_basics.html#the-has_many-through-association class Physician ActiveRecord::Base has_many :appointments has_many :patients,:through = :appointmentsendcl
有一些has_many通过查询的问题.
使用此处的示例:http://guides.rubyonrails.org/association_basics.html#the-has_many-through-association class Physician < ActiveRecord::Base has_many :appointments has_many :patients,:through => :appointments end class Appointment < ActiveRecord::Base belongs_to :physician belongs_to :patient end class Patient < ActiveRecord::Base has_many :appointments has_many :physicians,:through => :appointments end Appointment表有一个名为appointment_date的列 如何让特定医师的所有患者在指定日期预约? 解决方法Patient.includes(:physicians,:appointments).where('physicians.id = ? AND appointments.appointment_date = ?',<id or ids array>,Date.today) Date.today可以用任何东西改变,而pysician由id或一组id指定. 你也可以这样做: physician = Physician.find(id) patients = physician.patients.includes(:appointments).where('appointments.appointment_date = ?',some_date) 编辑: 在Rails 4和转发中,您需要向查询添加引用(:约会)以便在where子句中使用约会. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |