web-dev-qa-db-ja.com

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.

Codeanywhere 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()])
36
VeeDuvv

これは、仮想環境を使用して実行したときにも起こりました。 anaconda 3.7ただし、プロジェクトインタープリターをローカルマシンに戻したときPython 3.7、次に実行します。

pip install email_validator

それはうまくいきました。

私はanaconda Project Interpreterにモジュール「email_validator」をインストールできないのを不思議に思いました。だから私はあなたが最初にローカルマシンで試すことをお勧めします。

0
bertha