Исправлена ​​проблема Flask-SQLAlchemy db.create_all(), но теперь появляется ошибка 404Python

Программы на Python
Anonymous
Исправлена ​​проблема Flask-SQLAlchemy db.create_all(), но теперь появляется ошибка 404

Сообщение Anonymous »

Я попытался запустить свой код для настройки базы данных с помощью flask и получил эту ошибку. Я провел небольшое исследование и понял, как это исправить, используя:

Код: Выделить всё

with app.app_context():
db.create_all()
print('Created Database')
Однако теперь, когда я пытаюсь запустить свой сайт, я получаю ошибку 404. До того, как я добавил этот шаг, все работало нормально, и я не могу понять, что я сделал не так.... Есть идеи?

Код: Выделить всё

from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from os import path

db = SQLAlchemy()
DB_NAME = "database.db"

def create_app():
app = Flask(__name__)
app.config['SECRET_KEY'] = 'asdf;lkj'
app.config['SQLALCHEMY_DATABASE_URI'] = f'sqlite:///{DB_NAME}'
db.init_app(app)

from .views import views
from .auth import auth

app.register_blueprint(views, url_prefix='/')
app.register_blueprint(auth, url_prefix='/')

from .models import User, Note

with app.app_context():
db.create_all()
print('Created Database!')

return app
Изначально мой код был таким:

Код: Выделить всё

from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from os import path

db = SQLAlchemy()
DB_NAME = "database.db"

def create_app():
app = Flask(__name__)
app.config['SECRET_KEY'] = 'asdf;lkj'
app.config['SQLALCHEMY_DATABASE_URI'] = f'sqlite:///{DB_NAME}'
db.init_app(app)

from .views import views
from .auth import auth

app.register_blueprint(views, url_prefix='/')
app.register_blueprint(auth, url_prefix='/')

from .models import User, Note

return app

def create_database(app):
if not path.exists('website/' + DB_NAME):
db.create_all(app=app)
print('Created Database!')
Это выдало мне ошибку TypeError. Как только я изменил его на app.app_context()..... он создал файл database.db, но когда я захожу на 127.0.0.1:5000, чтобы просмотреть веб-сайт, я получаю ошибку 404.

Подробнее здесь: https://stackoverflow.com/questions/786 ... -404-error

Вернуться в «Python»