我需要创建数据库
这是我创建数据库需要键入的内容
from flaskblog import db
from flaskblog.models import User, Post, etc
db.create_all()
我首先在VisualStudio代码中的powershell中键入python
然后我键入from flaskblog import db
并得到错误
ImportError:无法从“flaskblog”导入名称“db”(C:\Users\n\OneDrive\Desktop\codingfiles2use\flaskblog\uem>init\uu.py)
这是我的文件树。 file tree
我该如何解决这个问题?谢谢
app.py
from flask import Flask
# make SQLAlchemy work
from flask_sqlalchemy import SQLAlchemy
# make login work
from flask_login import LoginManager# user_loaded_from_header
# make crf protection work
from flask_wtf.csrf import CSRFProtect
# setup databases
db = SQLAlchemy()
# Make Login user variable work ?
login_manager = LoginManager()
# Setup CSRF protection. This allows html forms to work and be secure.
csrf = CSRFProtect()
# imports config from config.py
from flaskblog.config import Config
def create_app(config_class=Config):
app = Flask(__name__)
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
# what does this do?
app.config.from_object(config_class)
db.init_app(app)
login_manager.init_app(app)
csrf.init_app(app)
from flaskblog.usersinfo.routes import usersinfo
# why lowercse b in blueprints ?
app.register_blueprint(usersinfo)
return app
from .models import User
@login_manager.user_loader
def load_user(user_id):
return User.get_by_id(user_id)
run.py
from flaskblog.app import create_app
app = create_app()
if __name__ == '__main__':
app.run(debug=True)
config.py
import os
class Config:
# Setup CSRF secret key
SECRET_KEY = os.urandom(32)
SQLALCHEMY_DATABASE_URI = 'sqlite:///tmp/test.db'
我打字的时候
from flaskblog import db
from flaskblog.models import User
db.create_all()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Users\nmyle\AppData\Local\Programs\Python\Python39\lib\site-packages\flask_sqlalchemy\__init__.py", line 1094, in create_all
self._execute_for_all_tables(app, bind, 'create_all')
File "C:\Users\nmyle\AppData\Local\Programs\Python\Python39\lib\site-packages\flask_sqlalchemy\__init__.py", line 1071, in _execute_for_all_tables
app = self.get_app(app)
File "C:\Users\nmyle\AppData\Local\Programs\Python\Python39\lib\site-packages\flask_sqlalchemy\__init__.py", line 1042, in get_app
raise RuntimeError(
RuntimeError: No application found. Either work inside a view function or push an application context. See http://flask-sqlalchemy.pocoo.org/contexts/.
我试图通过添加一个不同的代码块来完成代码,但是没有成功,我仍然得到一个错误。我尝试了所有的代码块我该如何修复
您需要使用应用程序上下文
在终端中运行所有这些命令
相关问题 更多 >
编程相关推荐