Извините, я по-прежнему немного зеленоват с Ruby on Rails, если не сказать больше, поэтому я был бы признателен, даже если меня направили в том же направлении.
Итак ... У меня есть три таблицы БД, давайте назовем их людьми, работами и шляпами.
У меня есть область, которая возвращает только людей, которые выполняют определенную работу:
named_scope :emergency_workers, :include => :job, :conditions => {'jobs.name' => 'Police', 'jobs.name' => 'Fire','jobs.name' => 'paramedic'}
У меня есть область, которая возвращает только людей, которые носят шляпу:
named_scope :hat_wearers, :include => :job, :joins => :hat, :conditions => ["hats.name IS NOT ?", nil]
Мой вопрос заключается в том, как мне определить область действия, которая гласит: «Покажите мне только людей, которые носят шляпу (как указано выше), если они не выполняют эту конкретную работу, скажем, фермер». Итак, мой код вернул бы всех владельцев шляп и всех фермеров.
Не уверен, имеет ли это смысл, но я был бы очень благодарен за руководство ...