Regex email: номер + формат письма в ruby - PullRequest
0 голосов
/ 13 января 2020

У меня есть поле электронной почты в моей базе данных, также звоните на электронные письма, которые должны иметь этот формат: 123456789@pac.gmail.com, где 123456789 должны быть числами и длиной 9.

В моей модели я попытался отформатировать это для моего пользователя со следующим кодом:

class Email < ApplicationRecord
    EMAIL_PATTERN = /^[0-9]+/@pac.gmail.com
    LENGTH = 9
    validates :email, presence: true, format: EMAIL_PATTERN, length: LENGTH
end

Но с этим у меня возникает ошибка unexpected tIVAR, expecting end, но я не понимаю, почему в моем коде должен быть END, так как у меня его нет начать любой l oop или что-то, кто-нибудь знает, как правильно отформатировать электронную почту и почему у меня такая ошибка?

1 Ответ

0 голосов
/ 13 января 2020

Нет необходимости отдельно проверять длину; Вы можете сделать это из своего регулярного выражения. Если я правильно понимаю, вы должны убедиться, что есть 9 цифр, за которыми следует @pac.gmail.com. Вы можете сделать это так:

class Email < ApplicationRecord
  EMAIL_PATTERN = /\A[0-9]{9}@pac.gmail.com\z/
  validates :email, presence: true, format: EMAIL_PATTERN
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...