我想从我的__init__
文件中导入一个类。但是我没有成功导入它。这是我的目录结构
/fitBody_app
/fitBody
/static
/templates
__init__.py
models.py
views.py
run.py
这些都是我__init__.py
文件的导入:
import os
from flask import Flask
from flask_admin import Admin
from flask_admin.contrib.sqla import ModelView
from flask_sqlalchemy import SQLAlchemy
from wtforms import fields, widgets
from fitBody.views import my_app
from flask_bootstrap import Bootstrap
app = Flask(__name__)
db = SQLAlchemy(app)
这些是我views.py
文件中的所有导入:
import bcrypt
from flask import flash, redirect, render_template, request, session, Blueprint, url_for
from fitBody.models import RegistrationForm
from fitBody.models import cursor, conn
from fitBody import db
my_app = Blueprint('fitBody', __name__)
<......>
当我尝试运行该文件时,这是我的回溯:
Traceback (most recent call last):
File "/Users/kai/github-projects/fitBody_app/run.py", line 1, in <module>
from fitBody import app
File "/Users/kai/github-projects/fitBody_app/fitBody/__init__.py", line 9, in <module>
from fitBody.views import fitBody
File "/Users/kai/github-projects/fitBody_app/fitBody/views.py", line 8, in <module>
from fitBody import db
ImportError: cannot import name 'db'
我曾想,因为我是从同一个文件夹中导入的,所以可以像这样进行导入。
我将如何db
从__init__.py
文件中导入对象?
由于 views.py 使用db
import 语句应该在 db 定义之后。或者为了更好的设计,将蓝图移动到另一个文件,并将蓝图保留在该文件中:
#__init__.py
app = Flask(__name__)
db = SQLAlchemy(app)
from fitBody.views import my_app
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句