Запрос ActiveRecord - PullRequest
       1

Запрос ActiveRecord

4 голосов
/ 24 января 2012

У меня есть две модели Project и UrlList. Проект :has_many url_list и url_list :belongs_to проект.

Теперь у меня есть массив для идентификатора проекта all_projects = [1,2,5,8,16]. Я хочу получить все записи из url_list, где project_id - одна из записей из массива all_projects. Как мне написать код для этого?

1 Ответ

8 голосов
/ 24 января 2012

Вы можете передать массив в качестве значения для атрибута в where метод:

all_projects = [1, 2, 5, 8, 16]   
url_lists = UrlList.where(:project_id => all_projects)

Будет сгенерирован SQL-запрос:

SELECT `url_lists`.* FROM `url_lists` WHERE `project_id`.`user_id` IN (1, 2, 5, 8, 16)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...