【发布时间】:2019-12-27 19:07:36
【问题描述】:
我是flask新手,在从python控制台/cmd运行时导入db有问题。
我正面临这个错误:
In[67]: os.getcwd()
Out[67]: 'C:\\Users\\Desktop\\Python\\Flask'
In[68]: os.listdir()
Out[68]:
['app',
'app.db',
'config.py',
'Flask.py',
'migrations',
'venv',
'__init__.py',
'__pycache__']
In[69]: from Flask.app.models import User,Post
Traceback (most recent call last):
File "C:\Users\AppData\Local\Continuum\anaconda3\lib\site-packages\IPython\core\interactiveshell.py", line 3326, in run_code
exec(code_obj, self.user_global_ns, self.user_ns)
File "<ipython-input-69-dca3714f084d>", line 1, in <module>
from Flask.app.models import User,Post
File "C:\Program Files\JetBrains\PyCharm Community Edition 2019.3\plugins\python-ce\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 21, in do_import
module = self._system_import(name, *args, **kwargs)
File "C:\Users\Desktop\Python\Flask\app\models.py", line 1, in <module>
from Flask.app import db
ImportError: cannot import name 'db' from 'Flask.app' (C:\Users\Desktop\Python\Flask\app\__init__.py)
我的项目树:
Flask/
app/
__init__.py
forms.py
models.py
routes.py
__init__.py
config.py
Flask.py
Flask/init.py
app/init.py
from flask import Flask
from Flask.config import Config
from flask_sqlalchemy import SQLAlchemy
from flask_migrate import Migrate
app = Flask(__name__)
app.config.from_object(Config)
db = SQLAlchemy(app)
migrate = Migrate(app, db)
from Flask.app import routes, models
app/models.py
from Flask.app import db
from datetime import datetime
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String(64), index=True, unique=True)
email = db.Column(db.String(120), index=True, unique=True)
password_hash = db.Column(db.String(128))
def __repr__(self):
return '<User {}>'.format(self.username)
当通过命令运行烧瓶时,它工作正常。但是当我尝试通过 python 控制台或 cmd 运行时,我无法成功运行。 谢谢
【问题讨论】:
标签: python-3.x flask flask-sqlalchemy python-import