Rails запрос с Gem стран

У меня есть модель: Car, Каждый автомобиль принадлежит Museum и каждый музей находится в определенной стране. Страна хранится в виде двухсимвольного кода страны.

Затем я использую Countries драгоценный камень, чтобы посмотреть все детали страны, используя этот код alpha2.

То, что я пытаюсь сделать, это вытащить из базы данных автомобили с определенного континента. Countries У gem есть детали того, к какому континенту относится страна, но я застрял в том, как достать все машины с определенного континента.

Может ли кто-нибудь указать мне правильное направление?

Спасибо

1 ответ

Предположим, что автомобиль belongs_to :museum и музей имеет колонку с именем country Я бы решил эту проблему следующим образом:

  1. Получить все коды стран alpha2 для данного континента:

    country_codes = ISO3166:: Country.find_all_countries_by_continent ('Европа').map(&:alpha2)

  2. Загрузите автомобили запросом AR:

    cars = Car.include (: музей).where (музеи: {страна: коды страны})

Другие вопросы по тегам