Проблемы при импорте модулей в приложение flask - PullRequest
0 голосов
/ 13 марта 2020

enter image description here

У меня много проблем с импортом модулей. Содержимое в моих файлах выше:

run.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 / init . py

from .all_blueprints import app, db, ma

database1.py

from erp import app

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

Я получаю ошибки импорта, текущая -

Traceback (последний вызов был последним): File "/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_econtainer * init .py ", строка 1, из приложения импорта .all_blueprints, файл db, ma" from blueprint_finance.all_resources import api_finance ModuleNotFoundError: Нет модуля с именем «blueprint_finance»

Если кто-то может указать на ошибку, «это будет большим благом, потому что я потерян со вчерашнего дня. Большое спасибо!

1 Ответ

1 голос
/ 13 марта 2020

Я думаю, что вы создаете свои чертежи не правильно ( Смотрите подробное объяснение по этой ссылке ).

Если мы ссылаемся на то, как вы структурировали свой код,

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)
...