def create_app(config_name='default'): app = Flask(__name__) if config_name.lower() == 'testing': app.config['TESTING'] = True app.config.from_object(config[config_name]) config[config_name].init_app(app) moment = Moment(app) moment.init_app(app) cache = Cache(app) return app
from flask import Flask from flask.ext.bootstrap import Bootstrap from flask.ext.mail import Mail from flask.ext.moment import Moment from flask.ext.sqlalchemy import SQLAlchemy from flask.ext.login import LoginManager from flask.ext.pagedown import PageDown from config import config bootstrap = Bootstrap() mail = Mail() moment = Moment() db = SQLAlchemy() pagedown = PageDown() login_manager = LoginManager() login_manager.session_protection = 'strong' login_manager.login_view = 'auth.login' app = Flask(__name__) app.config.from_object(config['development']) config['development'].init_app(app) bootstrap = Bootstrap() mail = Mail() moment = Moment() db = SQLAlchemy() login_manager = LoginManager() login_manager.session_protection = 'strong' login_manager.login_view = 'auth.login'
from flask import Flask from flask.ext.assets import Environment, Bundle from flask.ext.bootstrap import Bootstrap from flask.ext.mail import Mail from flask.ext.moment import Moment from flask.ext.sqlalchemy import SQLAlchemy from flask.ext.login import LoginManager from flask.ext.pagedown import PageDown from config import config assets = Environment() bootstrap = Bootstrap() mail = Mail() moment = Moment() db = SQLAlchemy() pagedown = PageDown() login_manager = LoginManager() login_manager.session_protection = 'strong' login_manager.login_view = 'auth.login' def create_app(config_name): app = Flask(__name__) app.config.from_object(config[config_name]) config[config_name].init_app(app) assets.init_app(app) bootstrap.init_app(app) mail.init_app(app) moment.init_app(app)
from datetime import timedelta from flask_bootstrap import WebCDN basedir = os.path.abspath(os.path.dirname(__file__)) neo4j_user = os.environ.get('NEO4J_USER') or 'neo4j' neo4j_pass = os.environ.get('NEO4J_PASS') or 'neo4j' authenticate("localhost:7474", neo4j_user, neo4j_pass) graph = Graph() cypher = graph.cypher app = Flask(__name__) app.config['SECRET_KEY'] = 'hard to guess string' manager = Manager(app) bootstrap = Bootstrap(app) moment = Moment(app) app.extensions['bootstrap']['cdns']['jquery'] = WebCDN( '//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.1/') class NameForm(Form): name1 = StringField('First page (e.g. Hidden Markov model)?', validators=[Required()]) name2 = StringField('Second page (e.g. Support vector machine)?', validators=[]) submit = SubmitField('Submit') @app.route('/autocomplete', methods=['GET']) def autocomplete(): search = request.args.get('query')
from flask import Flask from flask.ext.bootstrap import Bootstrap from flask.ext.mail import Mail from flask.ext.moment import Moment from flask.ext.sqlalchemy import SQLAlchemy from config import config from flask.ext.login import LoginManager bootstrap = Bootstrap() # 使用bootstrap框架渲染模板 mail = Mail() # 使用邮件扩展 moment = Moment() # 使用moment.js是轻量级的js日期处理类库。集成moment.js到Jinja2模板的集成 db = SQLAlchemy() # flask数据库管理扩展包 login_manager = LoginManager() # 使用Flask-Login认证用户 login_manager.session_protection = 'strong' # session_protection属性可以设为None, basic, strong.其中strong会验证用户代理信息和IP地址,发现异常登出用户。 login_manager.login_view = 'auth.login' # login_view属性设置登录页面的端点 def create_app(config_name): # 创建应用, 程序的工厂函数,收一个参数,是程序所使用的配置名。 app = Flask(__name__) app.config.from_object( config[config_name] ) #配置类在config.py中定义。其中的配置可以使用Flask app.config配置对象提供的from_object()方法直接导入程序。 config[config_name].init_app(app) # 配置对象,通过名字在config字典中选择。 #程序创建并配置好后,就可以初始化扩展了。 login_manager.init_app(app) bootstrap.init_app(app) mail.init_app(app)
from flask import Flask, render_template from flask.ext.bootstrap import Bootstrap from flask.ext.mail import Mail from flask.ext.moment import Moment from flask.ext.sqlalchemy import SQLAlchemy from flask.ext.login import LoginManager myapp = Flask(__name__) myapp.config.from_object('config') bootstrap = Bootstrap(myapp) mail = Mail(myapp) moment = Moment(myapp) db = SQLAlchemy(myapp) login_manager = LoginManager() login_manager.session_protection = 'strong' login_manager.login_view = 'auth.login' login_manager.init_app(myapp) from app import views, models
def __init__(self, **kwargs): self.app = Flask(__name__, instance_relative_config=False) # config -- public config # from phzblog import config # self.app.config.from_object(config) self.app.config.from_object('config') # instance/config.py -- private config self.app.config.from_pyfile('../instance/config.py') # config/xxx.py -- scence config # self.app.config.from_envvar('APP_CONFIG_FILE') # APP_CONFIG_FILE defined in start.sh # flask-SQLAlchemy db.init_app(self.app) # flask-login login_manager.init_app(self.app) # flask-migrate from flask.ext.migrate import Migrate, MigrateCommand self.migrate = Migrate(self.app, db) # flask-script from flask.ext.script import Manager, Shell self.manager = Manager(self.app) # add 'db' command for flask-migrate self.manager.add_command('db', MigrateCommand) oauth.init_app(self.app) # pre-import some class for convenience def make_shell_context(): from .user.models import User, Profile from .post.models import Post, Tag, Category return dict( app=self.app, db=db, User=User, Profile=Profile, Post=Post, Tag=Tag, Category=Category, ) self.manager.add_command('shell', Shell(make_context=make_shell_context)) # flask-moment from flask.ext.moment import Moment self.moment = Moment(self.app) # flask-mail mail.init_app(self.app) for k, v in kwargs.items(): setattr(self.app, k, v) # main blog app from .main import mainbp self.app.register_blueprint(mainbp, # url_prefix='', ) # user & auth app from .user import userbp self.app.register_blueprint( userbp, url_prefix='/user', ) # post from .post import postbp self.app.register_blueprint(postbp, url_prefix='/post') # util from .util import utilbp self.app.register_blueprint(utilbp, url_prefix='/util')
#!venv/bin/python from flask import Flask, render_template from flask.ext.bootstrap import Bootstrap from flask.ext.script import Manager from flask.ext.moment import Moment app = Flask(__name__) Bootstrap(app) Moment(app) manager = Manager(app) @app.route('/') def index(): return render_template('index.html') @app.route('/2048') def game_2048(): return render_template("2048_templates/index.html") @app.route("/shooter") def game_shooter(): return render_template("shooter_templates/index.html") @app.route("/snake") def game_snake(): return render_template("snake_templates/index.html") @app.route('/blog') def blog(): return render_template('blog_templates/index.html')
from flask.ext.bootstrap import Bootstrap from flask.ext.sqlalchemy import SQLAlchemy from flask.ext.login import LoginManager from flask.ext.moment import Moment from flask.ext.mail import Mail from flask.ext.pagedown import PageDown login_manager = LoginManager() login_manager.session_protection = 'basic' login_manager.login_view = 'auth.login' login_manager.login_message = u'请先登录' db = SQLAlchemy() mail = Mail() pagedown = PageDown() moment = Moment() if __name__ == '__main__': bootstrap = Bootstrap() app = Flask(__name__) app.config['SECRET_KEY'] = 'hard to guess string' app.config['SQLALCHEMY_DATABASE_URI'] =\ 'mysql://*****:*****@172.16.34.7:3306/test' app.config['SQLALCHEMY_COMMIT_ON_TEARDOWN'] = True app.config['MAIL_SERVER'] = 'smtp.qiye.163.com' app.config['MAIL_PORT'] = 25 app.config['MAIL_USE_TLS'] = False app.config['MAIL_USERNAME'] = '******' app.config['MAIL_PASSWORD'] = '******'
from app import app from flask import render_template, request, session, redirect, url_for, flash from flask.ext.bootstrap import Bootstrap from flask.ext.moment import Moment from datetime import datetime from app.form import NameForm Bootstrap(app) ## use bootstrap to fly :) Moment(app) ## use moment.js to handle user time @app.route('/', methods=["GET", "POST"]) def index(): return render_template('index.html', current_time=datetime.utcnow(), name=session.get("name")) @app.route('/login', methods=["GET", "POST"]) def login(): form = NameForm() if request.method == "POST" and form.validate_on_submit(): old_name = session.get("name") if old_name is not None and old_name != form.name.data: flash("your name is successfully changed") session["name"] = form.name.data return redirect(url_for("index")) return render_template("signup.html", form=form) @app.route('/user/<name>')
from flask import Flask from flask.ext.moment import Moment from config import databaseconfig from apps.models import User from apps.models import db from apps.views.main import main as main_blueprint from flask.ext.mail import Mail, Message # add send email demo app = Flask(__name__) moment = Moment() # add Time-Moment mail = Mail() def create_app(config): app.config.from_object(databaseconfig[config]) app.register_blueprint(main_blueprint) # register main_blueprint db.init_app(app) moment.init_app(app) mail.init_app(app) return app from . import views
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///' + os.path.join( basedir, 'data.sqlite') # 指定数据库URI app.config['SQLALCHEMY_COMMIT_ON_TEARDOWN'] = True app.config['MAIL_SERVER'] = 'smtp.qq.com' app.config['MAIL_PORT'] = 587 # 465 app.config['MAIL_USE_TLS'] = True app.config['MAIL_USERNAME'] = os.environ.get('MAIL_USERNAME') app.config['MAIL_PASSWORD'] = os.environ.get('MAIL_PASSWORD') app.config['FLASKY_MAIL_SUBJECT_PREFIX'] = '[Flasky]' app.config['FLASKY_MAIL_SENDER'] = 'Flasky Admin <' + app.config[ 'MAIL_USERNAME'] + '>' app.config['FLASKY_ADMIN'] = os.environ.get('FLASKY_ADMIN') manager = Manager(app) # 命令行解析功能 bootstrap = Bootstrap(app) # 集成Bootstrap框架 moment = Moment(app) # 渲染日期和时间 db = SQLAlchemy(app) # 创建数据库 mail = Mail(app) # 初始化Flask-Mail migrate = Migrate(app, db) manager.add_command('db', MigrateCommand) class NameForm(Form): name = StringField('What is your name?', validators=[Required()]) submit = SubmitField('Submit') class Role(db.Model): __tablename__ = 'roles' id = db.Column(db.Integer, primary_key=True)