首页 > 解决方案 > “如何修复” ImportError:无法导入名称“SQLAlchemy”

问题描述

import os
from flask import Flask
from flask_wtf import FlaskForm
import sqlalchemy
from flask_sqlalchemy import SQLAlchemy

bsdir = os.path.abspath(os.path.dirname(__file__))
# print(bsdir)

app = Flask(__name__, template_folder = 'template')


app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///'+os.path.join(bsdir,'data.sqlite')
app.config['SQLALCHEMY_TRACK_MODIFICATION'] = False

db = SQLAlchemy(app)
class Puppy(db.Model):
    pass

回溯(最近一次通话最后):

文件“D:\PYTHON\GIT_EXC\FLASK_\flask_sqlalchemyex.py”,第 5 行,从 flask_sqlalchemy 导入 SQLAlchemy 文件“D:\PYTHON\GIT_EXC\FLASK_\flask_sqlalchemy.py”,第 4 行,从 flask_sqlalchemy 导入 SQLAlchemy ImportError:无法导入名称'SQLAlch

标签: python-3.x

解决方案


我在通过命令实例化气流数据库时遇到了同样的问题

$airflow db init 
error: ImportError: cannot import name 'SQLAlchemyAutoSchema'

修复:

  1. 卸载:

    $pip uninstall marshmallow-sqlalchemy
    
  2. 然后将其升级到版本 0.24.0

    $pip3 install marshmallow-sqlalchemy==0.24.0
    

我的问题已解决并能够初始化气流数据库。


推荐阅读