def create_app(instance_path=None, testing_config=None): app = flask.Flask(__name__, instance_path=instance_path, instance_relative_config=True) app.config.update(default_config) if testing_config: app.config.update(testing_config) else: app.config.from_pyfile("settings.py", silent=True) # set up users sqlalchemy database if testing_config: users_uri = ''.join([app.config['DATABASE_URI'], app.config['DATABASE_URI_NAME']]) else: users_uri = ''.join([app.config['DATABASE_URI'], instance_path, app.config['DATABASE_URI_NAME']]) engine = create_engine(users_uri) session_factory.configure(autocommit=False, autoflush=False, bind=engine) Base.metadata.bind = engine # initialize blueprints goals.initialize_app(app) targets.initialize_app(app) indicators.initialize_app(app) objectives.initialize_app(app) actions.initialize_app(app) eu_strategy.initialize_app(app) auth.initialize_app(app) mongo.init_app(app) sentry.init_app(app) oid.init_app(app) babel.init_app(app) babel.locale_selector_func = sugar.get_session_language Markdown(app) @app.route('/ping') def ping(): return "nbsap is okay" @app.route('/crashme') def crashme(): raise ValueError("Crashing, as requested.") @app.before_request def before_request(): flask.g.user = None if 'openid' in flask.session: flask.g.user = User.query.filter_by(openid=flask.session ['openid']).first() @app.after_request def after_request(response): db_session.remove() return response return app
def create_app(): app = Flask(__name__) environment_config = Config.for_actual_environment() app.config.from_object(environment_config) mongo.init_app(app) set_up_sentry(environment_config) register_endpoints(app) return app
def create_app(mongo_uri, debug=False, testing=False): app = Flask(__name__) app.config['DEBUG'] = debug app.config['TESTING'] = testing app.config['WTF_CSRF_ENABLED'] = not testing app.config['MONGO_URI'] = mongo_uri app.secret_key = os.environ.get('SECRET_KEY', 'clef pour les tests') Babel(default_locale='fr').init_app(app) Gravatar().init_app(app) mongo.init_app(app) login_manager.init_app(app) bcrypt.init_app(app) app.register_blueprint(auth) app.register_blueprint(bookmarks) app.register_blueprint(tools, url_prefix='/tools') app.register_blueprint(profil, url_prefix='/profil') @app.before_first_request def create_mongo_index(): mongo.db.bookmarks.ensure_index('published', pymongo.DESCENDING, background=True) mongo.db.bookmarks.ensure_index('user._id', pymongo.DESCENDING, background=True) mongo.db.bookmarks.ensure_index('title', pymongo.ASCENDING, background=True) mongo.db.bookmarks.ensure_index('description', background=True) mongo.db.bookmarks.ensure_index('tags', pymongo.ASCENDING, background=True) mongo.db.bookmarks.ensure_index([('user._id', pymongo.ASCENDING), ('url', pymongo.ASCENDING)], background=True, unique=True) mongo.db.users.ensure_index('email', pymongo.ASCENDING, background=True, unique=True) mongo.db.users.ensure_index('nickname', pymongo.ASCENDING, background=True, unique=True) @environmentfilter def group_by_humanize_date(environment, value, attribute): sorted_collections = sorted(value, key=make_attrgetter(environment, attribute)) return map(_GroupTuple, groupby(sorted_collections, _make_attr_getter_for_date(environment, attribute))) app.jinja_env.filters['group_by_humanize_date'] = group_by_humanize_date @app.template_filter() def group_by_first_letter(array_of_string): return groupby(array_of_string, key=operator.itemgetter(0)) def _make_attr_getter_for_date(environment, attribute): def callback(x): return arrow.get(environment.getitem(x, attribute)).humanize(locale='FR_fr') return callback return app
def create_app(configfile=None): """ Application Factory - see http://flask.pocoo.org/docs/patterns/appfactories/ """ app = Flask(__name__) # init database mongo.init_app(app) # Load blueprints # http://flask.pocoo.org/docs/0.12/blueprints/ app.register_blueprint(directory, url_prefix='/directory') app.register_blueprint(frontend) return app
from dotenv import load_dotenv from datetime import datetime from flask_pymongo import PyMongo from flask import Flask, jsonify, request, abort from flask_bcrypt import Bcrypt from database import mongo from routes.subjects import subjects from routes.tasks import tasks from routes.auth import auth from flask_jwt_extended import JWTManager app = Flask(__name__) load_dotenv('.env') app.config["MONGO_URI"] = os.environ.get('ATLAS_URL') app.config["JWT_SECRET_KEY"] = os.environ.get('JWT_SECRET_KEY') mongo.init_app(app) bcrypt = Bcrypt(app) jwt = JWTManager(app) app.register_blueprint(subjects) app.register_blueprint(tasks) app.register_blueprint(auth) @app.route('/api/v1', methods=['GET']) def hello_world(): return "hello world"
import json, string, random from flask import Flask, render_template, session, g import utils from blueprints.auth import auth from database import mongo uri = 'mongodb+srv://rootUser:[email protected]/timeDB?retryWrites=true&w=majority' app = Flask(__name__) app.register_blueprint(auth) app.secret_key = str(''.join(random.choice(string.ascii_letters)) for i in range(20)) mongo.init_app(app, uri=uri) usersDB = mongo.db.users timesDB = mongo.db.times @app.before_request def load_user(): if '_id' in session: g.user = {'_id': session['_id'], 'username': session['username'], 'status': session['status']} if 'start' in session: g.user['start'] = session['start'] g.user['end'] = session['end'] g.user['hours'] = session['hours'] @app.route('/home') def home():
from flask import Flask, request, jsonify, session import bcrypt import json from bson.objectid import ObjectId from database import mongo import os app = Flask("__name__") #database config starts app.config["MONGO_DBNAME"]= <Enter your db name here> app.config["MONGO_URI"]= <Enter your mongo URI here> mongo.init_app(app) #database config ends #user usecases start from user_side import user_side app.register_blueprint(user_side) #user usecases ends #police usecases starts from police_side import police_side app.register_blueprint(police_side)
app = Flask(__name__) # App configurations here! app.config['MONGO_DBNAME'] = 'students_connect' app.config['MONGO_URI'] = 'mongodb://127.0.0.1:27017/students_connect' app.config['MAIL_SERVER'] = 'smtp.gmail.com' app.config['MAIL_PORT'] = 465 app.config['MAIL_USE_SSL'] = True app.config['MAIL_USERNAME'] = '******' app.config['MAIL_PASSWORD'] = '******' # App initializations here! mail = Mail(app) jwt = JWTManager(app) # JWT mongo.init_app(app) # Mongo #BLUE PRINTS from attendance import attendance from repository import repository app.register_blueprint(attendance.app, url_prefix='/attendance') app.register_blueprint(repository.app, url_prefix='/repository') ALLOWED_EXTENSIONS = {'txt', 'pdf', 'png', 'jpg', 'jpeg', 'gif'} def allowed_file(filename): return '.' in filename and \ filename.rsplit('.', 1)[1].lower() in ALLOWED_EXTENSIONS
def create_app(mongo_uri, debug=False, testing=False): app = Flask(__name__) app.config['DEBUG'] = debug app.config['TESTING'] = testing app.config['WTF_CSRF_ENABLED'] = not testing app.config['MONGO_URI'] = mongo_uri app.secret_key = os.environ.get('SECRET_KEY', 'clef pour les tests') Babel(default_locale='fr').init_app(app) Gravatar().init_app(app) mongo.init_app(app) login_manager.init_app(app) bcrypt.init_app(app) app.register_blueprint(auth) app.register_blueprint(bookmarks) app.register_blueprint(tools, url_prefix='/tools') app.register_blueprint(profil, url_prefix='/profil') @app.before_first_request def create_mongo_index(): mongo.db.bookmarks.ensure_index('published', pymongo.DESCENDING, background=True) mongo.db.bookmarks.ensure_index('user._id', pymongo.DESCENDING, background=True) mongo.db.bookmarks.ensure_index('title', pymongo.ASCENDING, background=True) mongo.db.bookmarks.ensure_index('description', background=True) mongo.db.bookmarks.ensure_index('tags', pymongo.ASCENDING, background=True) mongo.db.bookmarks.ensure_index([('user._id', pymongo.ASCENDING), ('url', pymongo.ASCENDING)], background=True, unique=True) mongo.db.users.ensure_index('email', pymongo.ASCENDING, background=True, unique=True) mongo.db.users.ensure_index('nickname', pymongo.ASCENDING, background=True, unique=True) @environmentfilter def group_by_humanize_date(environment, value, attribute): sorted_collections = sorted(value, key=make_attrgetter( environment, attribute)) return map( _GroupTuple, groupby(sorted_collections, _make_attr_getter_for_date(environment, attribute))) app.jinja_env.filters['group_by_humanize_date'] = group_by_humanize_date @app.template_filter() def group_by_first_letter(array_of_string): return groupby(array_of_string, key=operator.itemgetter(0)) def _make_attr_getter_for_date(environment, attribute): def callback(x): return arrow.get(environment.getitem( x, attribute)).humanize(locale='FR_fr') return callback return app
from main import app as application from database import mongo application.config.from_object('config.Production') mongo.init_app(application) # initialize here!
from main import app from database import mongo app.config.from_object('config.Testing') mongo.init_app(app) # initialize here!
from flask import Flask, render_template from database import mongo class IFApp(Flask): pass app = IFApp(__name__) app.config.from_pyfile('config.py') mongo.init_app(app) from blueprints import interface, home app.register_blueprint(interface, url_prefix='/interface') app.register_blueprint(home, url_prefix='/') def seed_database(): from blueprints.interface.models import User, Stub, ClassStub, FunctionStub from time import time with app.app_context(): mongo.db.drop_collection(User.__clct_name__) mongo.db.drop_collection(Stub.__clct_name__) u = User(username='******', password='******', email='*****@*****.**') clsstub = ClassStub(created_by='kj', time=time(), name='test_class', inherited_from='e', metaclass='IFModel', package='interfacade.utils',