[python] WTForms : 이메일 유효성 검사 지원을 위해 ’email_validator’설치

양식 유효성 검사를 위해 다음 코드를 실행할 때 예외가 발생합니다.

File "/Users/homeduvvuri/Documents/Learning/PartyGoUdemy/PartGo/user/forms.py", line 11, in BaseUserForm
    email = EmailField('Email', [validators.DataRequired(), validators.Email()])
File "/Users/homeduvvuri/Documents/Learning/PartyGoUdemy/PartGo/partgo-env/lib/python3.7/site-packages/wtforms/validators.py", line 332, in __init__
    raise Exception("Install 'email_validator' for email validation support.")
Exception: Install 'email_validator' for email validation support.

어디에서나 VM에서 완벽하게 실행됩니다. 로컬 컴퓨터에 없습니다.

from flask_wtf import FlaskForm
from flask_wtf.file import FileField, FileAllowed
from wtforms import Form, StringField, PasswordField, validators, ValidationError
from wtforms.validators import InputRequired, Email
from wtforms.fields.html5 import EmailField
from wtforms.widgets import TextArea
from user.models import User

class BaseUserForm(FlaskForm):
    name = StringField('Name', [validators.DataRequired(), validators.Length(min=2, max=30)])
    email = EmailField('Email', [validators.DataRequired(), validators.Email()])



답변

9 행에서 wtforms / validators.py 파일을 보면 :

import email_validator

패키지를 설치하십시오.

pip install email_validator


답변

최신 업데이트와 동일한 문제가 있었고 email_validator 및 flask-validator를 설치하려고 시도했지만이 예외가 계속되었습니다. requirements.txt에 다음 줄을 추가하여 해결 : email-validator == 1.0.5 제안 된대로 [여기]. ( https://github.com/alphagov/notifications-admin/commit/5ce2906c5aa6d16 )


답변

다음과 wtforms같이 설치하려는 경우 :

pip install wtforms[email]


답변