Obtendo exceção ao executar o código a seguir para validação de formulário.
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.
Executa perfeitamente no codeanywhere VM. Não na máquina local.
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()])
Respostas:
Se você der uma olhada no arquivo wtforms / validators.py na linha 9:
Basta instalar o pacote:
fonte
Exception: Install 'email_validator' for email validation support.
Eu tive o mesmo problema com as atualizações mais recentes, tentei instalar o email_validator e o validador de balões e continuei com essa exceção. Resolvido adicionando em requirements.txt a seguinte linha: email-validator == 1.0.5, conforme sugerido [aqui]. ( Https://github.com/alphagov/notifications-admin/commit/5ce2906c5aa6d16 )
fonte
Se você deseja que ele seja instalado com
wtforms
:fonte