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
Beispiel #2
0
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'
Beispiel #3
0
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)
Beispiel #4
0
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')
Beispiel #5
0
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)
Beispiel #6
0
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
Beispiel #7
0
    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')
Beispiel #8
0
#!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')
Beispiel #9
0
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'] = '******'
Beispiel #10
0
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>')
Beispiel #11
0
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
Beispiel #12
0
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)