Ricy40

init

Nov 4th, 2023
876
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.05 KB | None | 0 0
  1. from flask import Flask
  2. from flask_sqlalchemy import SQLAlchemy
  3. import os
  4. from os import path
  5. from flask_login import LoginManager
  6. from flask_cors import CORS
  7.  
  8. db = SQLAlchemy()
  9. DB_NAME = "database"
  10.  
  11. def create_app():
  12.  
  13.     app = Flask(__name__)
  14.     app.config['SECRET_KEY'] = '{os.environ.get("secret")}
  15.    app.config['SQLALCHEMY_DATABASE_URI'] = f'mysql+pymysql://{os.environ.get("database_username")}:{os.environ.get("database_password")}@localhost/{DB_NAME}'
  16.    db.init_app(app)
  17.  
  18.    from .views import views
  19.  
  20.    app.register_blueprint(views, url_prefix='/')
  21.  
  22.    from .models import User, Review
  23.  
  24.    create_database(app)
  25.  
  26.    login_manager = LoginManager()
  27.    login_manager.login_view = 'views.home'
  28.    login_manager.init_app(app)
  29.  
  30.    @login_manager.user_loader
  31.    def loadUser(id):
  32.        return User.query.get(int(id))
  33.  
  34.    CORS(app)
  35.  
  36.    return app
  37.  
  38. def create_database(app):
  39.    if not path.exists('website/' + DB_NAME):
  40.        with app.app_context():
  41.            db.create_all()
  42.            print("Database created!")
Advertisement
Add Comment
Please, Sign In to add comment