[FIXED] Flask-Script: from flask._compat import text_type ModuleNotFoundError: No module named 'flask._compat'

Issue

When using Flask-Script I get an error when importing Manager.

I have installed with pip Flask and Flask-Script. How do I fix this?

manage.py

from flask_script import Manager

from main import app

manager = Manager(app)

@manager.command
def hello():

    print ("hello")

if __name__ == "__main__":
    manager.run()

main.py

from flask import Flask

app = Flask(__name__)

Error

(venv) raul@raul-PC:~/Proyectos Python/flask_script$ python3 manage.py hello
Traceback (most recent call last):
  File "manage.py", line 1, in <module>
    from flask_script import Manager
  File "/home/raul/Proyectos Python/flask_script/venv/lib/python3.8/site-packages/flask_script/__init__.py", line 15, in <module>
    from flask._compat import text_type
ModuleNotFoundError: No module named 'flask._compat'

Solution

Did you update Flask to version 2.0.0 ?
Degrade Flask to version 1.1.2 and it’ll work.

EDIT
Instead of using with Flask-Script, you can simply use the below commands :

flask db init to initialize the database
flask db migrate to migrate new changes
flask db upgrade to upgrade and so on.

EDIT
You can go through this tutorial to learn more: https://ashutoshkrris.hashnode.dev/how-to-migrate-to-flask-20-cli

Answered By – Ashutosh Krishna

Answer Checked By – Candace Johnson (Easybugfix Volunteer)

Leave a Reply

(*) Required, Your email will not be published