У меня есть модель Enrollment
, которая подтверждает уникальность каждого курса пользователем:
validates_uniqueness_of :user_id, :scope => :course_id
Я создал область действия в модели Enrollment
, где я могу пройти курс, чтобы сузить курс по пользователю:
scope :course, lambda { |course| where(:course_id => course.id) }
Делая это, я могу позвонить:
current_user.enrollments.course(@course)
Тем не менее, это заставляет меня просматривать результаты, хотя результат только один (уникальный курс для каждого пользователя). Это нормально, но, похоже, должен быть способ просто выполнить область действия, а затем просто получить доступ к записи без необходимости циклически просматривать один результат.
Есть идеи? Я чувствую, что что-то упустил.