Я использую ruby на рельсах с гемом Devise для аутентификации пользователя.Каждый раз, когда новый пользователь подписывает свой адрес электронной почты, я вижу, что устройство назначает этому пользователю новый идентификатор пользователя и регистрирует там адрес электронной почты.Теперь я хочу отобразить приветственное сообщение для всех пользователей, впервые работающих (я не хочу, чтобы это сообщение появлялось при входе во второй или третий раз).Чтобы отобразить сообщение, я хочу проверить current_user.email по всем зарегистрированным электронным письмам в пользовательской таблице (логика здесь такова: если пользователь уже существует в пользовательской таблице, то я могу смело предположить, что пользователь уже посетил веб-сайт, поэтому я запрещаюДобро пожаловать отображается).Я не уверен, как получить доступ ко всем идентификаторам электронной почты в таблице?Также, где сделать эту проверку.Я хочу, чтобы это приветственное сообщение было первым, что увидит пользователь при успешном входе в систему.Может кто-нибудь помочь, пожалуйста.
Я пытался использовать "resource" resource_name "в контроллере сессий, но ничего не работает. Не уверен, что они даже отдаленно актуальны.
# POST /resource/sign_in
def create
self.resource = warden.authenticate!(auth_options)
$sign = sign_in_count
set_flash_message!(:notice, :signed_in)
sign_in(resource_name, resource)
yield resource if block_given?
respond_with resource, location: after_sign_in_path_for(resource)
end
Я пытаюсь назначитьsign_in_count для входа пользователя в глобальную переменную с именем $ sign, чтобы я мог использовать его значение, чтобы проверить, выполнил ли пользователь первый раз или нет.