在flask app中导入模块的问题

阿尔萨兰·艾哈迈德·伊沙克

在此处输入图片说明

我在导入模块时遇到很多问题。我的文件中的内容在上面:

运行.py:

from erp import app

if __name__ == '__main__':
    app.run(debug=True)

all_blueprints.py:

from flask import Flask
from flask_restful import Api
from flask_sqlalchemy import SQLAlchemy
from flask_marshmallow import Marshmallow

from blueprint_finance.all_resources import api_finance

app = Flask(__name__)
app.config["SQLALCHEMY_DATABASE_URI"] = "sqlite:////tmp/test.db"
db = SQLAlchemy(app)
ma = Marshmallow(app)

app.register_blueprint(api_finance)

erp/初始化.py

from .all_blueprints import app, db, ma

数据库1.py

from erp import app

class Author(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(255))

我不断收到导入错误,当前错误是

回溯(最近一次通话):文件“/home/arsalan/python_practise/MY_WORK_FILES/React_works/React_Container_Mount/backend/run.py”,第 25 行,来自 erp 导入应用程序文件“/home/arsalan/python_practise/MY_WORK_FILES/React_works /React_Container_Mount/backend/erp/ init .py”,第 1 行,从 .all_blueprints 导入 app, db, ma 文件“/home/arsalan/python_practise/MY_WORK_FILES/React_works/React_Container_Mount/backend/erp/all_blueprints.py”,行12、在 from blueprint_finance.all_resources import api_finance ModuleNotFoundError: No module named 'blueprint_finance'

如果有人能指出错误,那将是极大的帮助,因为我从昨天开始就迷路了。非常感谢!

托宾

我认为您创建蓝图的方式不是正确的方式(有关详细说明,请参阅此链接)。

如果我们参考您构建代码的方式,

erp/
    blueprint_finance     ---> is your blueprint package
        __init__.py       ---> is where you create your blueprint
    all_blueprints.py     ---> is where you register your blueprint

让我们从erp/blueprint_finance/__init__.py文件开始

from flask import Blueprint

bp = Blueprint('blueprint_finance', __name__)

from erp.blueprint_finance import all_resources
from erp.blueprint_finance.finances_resources import resource1

erp/all_blueprints.py

from flask import Flask
from flask_restful import Api
from flask_sqlalchemy import SQLAlchemy
from flask_marshmallow import Marshmallow

app = Flask(__name__)
app.config["SQLALCHEMY_DATABASE_URI"] = "sqlite:////tmp/test.db"
db = SQLAlchemy(app)
ma = Marshmallow(app)

from erp.blueprint_finance import bp as blueprint_finance_bp
app.register_blueprint(blueprint_finance_bp)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章