Если вашему приложению не нужно хранить вводимые пользователем данные с учетом регистра, просто преобразуйте ввод в верхний или нижний регистр при входе. Пример,
username = params[:username].to_s.downcase
В противном случае, если производительность являетсяпроблема для вас (регулярное выражение без учета регистра не может использовать преимущества для индексов), правильный путь для этого - сохранить резервную копию поля для имени пользователя
field :username_downcase
, а затем выполнить запрос:
User.where(username_downcase: params[:username].to_s.downcase)