我有2資源,醫生和保留。Rails 4連接查詢顯示錯誤的資源
class Doctor < ActiveRecord::Base
has_many :reservations
end
class Reservation < ActiveRecord::Base
belongs_to :doctor
end
模式:
create_table "reservations", force: true do |t|
t.integer "doctor_id"
t.date "date"
end
create_table "doctors", force: true do |t|
t.string "description"
t.datetime "created_at"
t.datetime "updated_at"
end
我要顯示所有的日期可用的醫生,讓所有不必須在那一天任何保留醫生。
我的查詢:
def index
@doctors = Doctor.all.order("created_at DESC")
@doctors = @doctors.joins(:reservations).where.not('reservations.date LIKE ?',params[:free_on]) if params[:free_on].present?
@doctors = @doctors.paginate(:page => params[:page], :per_page => 9)
end
我的問題是: 該查詢給我保留意見的結果。 如果我在我的數據庫中有1名醫生和3次預約,並且我選擇了11月1日(當天有1次預約),它顯示我是同一位醫生的2次,因爲2次預約不在11月1日。
我試過。集團,但它再次表明我只有1名醫生,如果有預約...
有人有什麼毛病我查詢的想法?
謝謝
嘗試包括而不是加入?通常你應該更喜歡包括加入... – user3334690 2014-10-08 14:42:59
Thx爲你的幫助,但同樣的問題。 – Devlesch 2014-10-08 14:50:35