Как получить список задач от пользователя, используя активную запись вместо массива - PullRequest
0 голосов
/ 26 июня 2018

Я пытаюсь получить список задач, которые может выполнить пользователь. Я успешно смог сделать это, и вот мой код

@tasklist = []     
user_info = [current_user.tag_list, current_user.ethnicity, current_user.gender, current_user.school, current_user.major ].flatten! 
          Task.all.each do |task|
            if task.tag_list.all? { |i| user_info.include?(i) }
            @tasklist.push(task)
            end
          end

Теперь, это все замечательно, хотя в предыдущей реализации моего кода. У меня был @taglist в качестве активной записи, и я использовал две функции активной записи: include и где на нем так:

@availabletasks = @tasklist.includes(:states).where(states: {user_id: current_user.id, value_cd: 0})

Идеальное состояние - заменить мой блок кода, который выбирает список задач, одним запросом. Другой вариант - заменить мою вторую строку кода оператором выбора массива. Хотя я понятия не имею, как это сделать.

Любая помощь приветствуется!

...