1

我有一个包含讲师、提供的服务和可用性的系统。

讲师可以提供一项或多项服务,并且可用性与讲师相关联。

我想创建一个可用性范围,以获取服务的所有可用性。

课程:

class Instructor < ActiveRecord::Base
  has_many :instructor_availabilities

  has_and_belongs_to_many :services
end

class Service < ActiveRecord::Base
  attr_accessible :name

  has_and_belongs_to_many :instructors
end

class InstructorAvailabililty < ActiveRecord::Base
  belongs_to :instructor
  attr_accessible time

  scope :of_service, lambda { |service_id| 
    #code goes here for this scope
  }
end

我将如何实现这个 of_service 范围,使用两个内部连接来获取服务的可用性(通过讲师到服务的映射)?

4

1 回答 1

1

弄清楚了:

class Scheduling::InstructorAvailability < ActiveRecord::Base
  belongs_to :instructor
  attr_accessible time

  joins(:instructor => :services).where('scheduling_instructors_services.service_id' => service_id)   
  }
end
于 2013-05-10T12:47:32.157 回答