I am running Flask application on Python 3.4.3 version. While executing the command:
>> python3 test.py I got below error:
root@imx6slevk:app# python3 test.py Traceback (most recent call last): File "test.py", line 6, in <module> from flask_bootstrap import Bootstrap File "/usr/lib/python3.4/site-packages/flask_bootstrap/__init__.py", line 9, in <module> from wtforms.fields import HiddenField File "/usr/lib/python3.4/site-packages/wtforms/__init__.py", line 11, in <module> from wtforms import validators, widgets File "/usr/lib/python3.4/site-packages/wtforms/validators.py", line 9, in <module> import email_validator File "/usr/lib/python3.4/site-packages/email_validator/__init__.py", line 6, in <module> import dns.resolver File "/usr/lib/python3.4/site-packages/dns/resolver.py", line 32, in <module> import dns.flags File "/usr/lib/python3.4/site-packages/dns/flags.py", line 24, in <module> class Flag(enum.IntFlag): AttributeError: 'module' object has no attribute 'IntFlag' I have also check below solution on Stackoverflow but nothing worked for me:
AttributeError: module 'enum' has no attribute 'IntFlag'
I have check enum34 is installed or not:
pip3 freeze | grep enum34 but it is not installed.
Also by unsetting the PYTHONPATH not worked for me.
Edit:
Code inside test.py:
import json, logging, logging.handlers, time from flask import Flask, render_template, redirect, url_for from flask_bootstrap import Bootstrap from flask_wtf import FlaskForm from wtforms import StringField, SubmitField from wtforms.validators import DataRequired app = Flask(__name__) Bootstrap(app) # Flask-WTF requires an encryption key - the string can be anything app.config['SECRET_KEY'] = '<ENCRYPTKEY>' class NameForm(FlaskForm): name = StringField("First Name", validators=[DataRequired()]) lname = StringField("Last Name", validators=[DataRequired()]) phone = StringField("Phone", validators=[DataRequired()]) card = StringField("Card", validators=[DataRequired()]) submit = SubmitField('Submit') @app.route("/", methods=["GET","POST"]) def hello(): form = NameForm() return render_template("card2.html", form=form) if __name__ == "__main__": app.run(host="0.0.0.0", debug=True, port=8080) Edit 2:
I have below packages installed:
click==7.1.2 dnspython==2.1.0 dominate==2.6.0 email-validator==1.1.2 Flask==1.1.2 Flask-Bootstrap4==4.0.2 Flask-Login==0.5.0 Flask-WTF==0.14.3 idna==3.1 itsdangerous==1.1.0 Jinja2==2.11.3 MarkupSafe==1.1.1 paho-mqtt==1.5.1 visitor==0.1.3 Werkzeug==1.0.1 WTForms==2.3.3 Edit 3:
After downgrading WTForms to 2.2.1 the above error is solved now I am getting error for different package :
File "app/auth.py", line 4, in <module> from Login import Login File "/spider/web/webroot/flask/axn_web/app/Login.py", line 3, in <module> import paho.mqtt.client as mqtt File "/usr/lib/python3.4/site-packages/paho/mqtt/client.py", line 69, in <module> import dns.resolver File "/usr/lib/python3.4/site-packages/dns/resolver.py", line 32, in <module> import dns.flags File "/usr/lib/python3.4/site-packages/dns/flags.py", line 24, in <module> class Flag(enum.IntFlag): AttributeError: 'module' object has no attribute 'IntFlag' Kindly provide a solution to resolve this issue on Python 3.4.3 version. Thanks in advance.
https://stackoverflow.com/questions/67207091/python-3-4-3-attributeerror-module-object-has-no-attribute-intflag April 22, 2021 at 01:10PM
没有评论:
发表评论