Это похоже на глупую простую проблему. Я просматриваю список пользователей, используя побитовый оператор, чтобы определить, совпадают ли имя и фамилия с предоставленным термином (я не писал этот код, он унаследован).
Теперь мне нужно добавить третье условие - чтобы их состояние не было «отключено». Без этого третьего условия поиск работает как ожидалось. Однако, когда я добавляю другой оператор и оператор, он ломается.
@users = User.reject{|user| user.first_name !~ /^#{term}/i && user.last_name !~ /^#{term}/i } #Works as expected - returns users matching 'term'
@users = User.reject{|user| user.first_name !~ /^#{term}/i && user.last_name !~ /^#{term}/i && user.suspended? } # Does not work - returns a full list of active users, as well as any suspended users that match.
@users = User.reject{|user| user.first_name !~ /^#{term}/i && user.last_name !~ /^#{term}/i }
@users.reject!{|user| user.suspended?} # This combination works, but I feel like there should be a way to condense it into a single line
Я также пытался добавить несколько скобок вокруг первых двух условий, но это тоже не помогает.
Любая помощь приветствуется