Beispiel #1
0
    def setUp(self):
        bp = Blueprint(
            'bp',
            __name__,
            template_folder=['templates/bp', 'another_templates/another_bp'])

        @bp.route('/render_bp_from_templates')
        def render_bp_from_templates():
            return render_template('bp.html', result="succeeds")

        @bp.route('/render_bp_from_another_templates')
        def render_bp_from_another_templates():
            return render_template('another_bp.html', result="succeeds")

        app = Flask(__name__,
                    template_folder=['templates', 'another_templates'])
        MakoTemplates(app)

        @app.route('/render_from_templates')
        def render_from_templates():
            return render_template('template_file.html', result="succeeds")

        @app.route('/render_from_another_templates')
        def render_from_another_templates():
            return render_template('another_template_file.html',
                                   result="succeeds")

        app.register_blueprint(bp)
        self.app = app
        self.client = app.test_client()
Beispiel #2
0
def make_app(secret_key):
    brewmonitor = Flask(__name__)
    brewmonitor.template_folder = '../../templates/'
    brewmonitor.secret_key = secret_key
    _ = MakoTemplates(brewmonitor)

    config = Configuration.load(
        os.environ.get('BREWMONITOR_CONFIG',
                       '/usr/local/brewmonitor/configuration.yaml'))
    brewmonitor.config.update(config.flask_configuration)
    # Ensure that at least that option is off
    brewmonitor.config['MAKO_TRANSLATE_EXCEPTIONS'] = False
    brewmonitor.config['brewmonitor config'] = config

    initialise_db(config)

    brewmonitor.register_blueprint(home_bp)
    brewmonitor.register_blueprint(accessor_bp)
    brewmonitor.register_blueprint(storage_bp)
    brewmonitor.register_blueprint(admin_bp)

    login_manager = LoginManager()
    login_manager.login_view = 'home.index'
    login_manager.init_app(brewmonitor)

    @login_manager.user_loader
    def load_user(id):
        return User.from_db(config.db_connection(), int(id))

    return brewmonitor
Beispiel #3
0
def create_app(config: dict = None):
    app = Flask(__name__, static_url_path='', instance_relative_config=True)

    if config:
        app.config.update(config)
    else:
        app.config.from_envvar("CMSERVICE_CONFIG")

    mako = MakoTemplates()
    mako.init_app(app)
    app._mako_lookup = TemplateLookup(
        directories=[
            pkg_resources.resource_filename('cmservice.service', 'templates')
        ],
        input_encoding='utf-8',
        output_encoding='utf-8',
        imports=['from flask_babel import gettext as _'])

    app.cm = init_consent_manager(app)

    babel = Babel(app)
    babel.localeselector(get_locale)
    app.config[
        'BABEL_TRANSLATION_DIRECTORIES'] = pkg_resources.resource_filename(
            'cmservice.service', 'data/i18n/locales')

    from .views import consent_views
    app.register_blueprint(consent_views)

    setup_logging(app.config.get('LOGGING_LEVEL', 'INFO'))

    logger = logging.getLogger(__name__)
    logger.info("Running CMservice version %s",
                pkg_resources.get_distribution("CMservice").version)
    return app
Beispiel #4
0
 def test_renderer(self, **kwargs):
     app = Flask(__name__)
     app.template_folder = os.path.join(self.root, "templates")
     app.config.update(MAKO_CACHE_DIR=os.path.join(self.root, "cache"),
                       MAKO_CACHE_SIZE=10)
     app.config.update(kwargs)
     with app.test_request_context():
         yield app, MakoTemplates(app)
Beispiel #5
0
def setup(**kwargs):
    from flask_mako import MakoTemplates

    app.template_folder = "views"
    app.secret_key = config.secret_key
    app.config.update(kwargs)
    mako = MakoTemplates(app)

    _is_setup = True
Beispiel #6
0
        def setUp(self):
            app = Flask(__name__)
            app.debug = True
            babel = Babel(app)
            mako = MakoTemplates(app)
            self.app = app
            self.mako = mako
            self.babel = babel

            @app.route('/')
            def babel_page():
                return render_template('babel_template.html')

            @babel.localeselector
            def get_locale():
                return self.locale
Beispiel #7
0
def create_app(config, init_db=True):
    if init_db:
        create_tables()

    app = Flask(__name__, template_folder='templates')
    MakoTemplates(app)
    app.json_encoder = CustomJSONEncoder
    app.config.from_object(config)

    for bp in all_blueprints:
        import_module(bp.import_name)
        app.register_blueprint(bp)

    sentry.init_app(app)

    return app
Beispiel #8
0
def app_factory() -> Flask:
    """
    Initialise the app. To be called by wsgi.
    """

    app = Flask(__name__)

    app.template_folder = 'templates'
    app.config['CSS_FOLDER'] = 'css'
    app.config['JS_FOLDER'] = 'js'
    app.config['IMAGES_FOLDER'] = 'images'
    app.config['FILES_FOLDER'] = 'files'

    # Register main blueprint
    app.register_blueprint(web_app_blueprint)

    MakoTemplates(app)
    app.config['MAKO_TRANSLATE_EXCEPTIONS'] = True

    return app
Beispiel #9
0
def flaskapp():
    app = Flask(__name__)

    app.env, app.debug = config.flask.env, config.flask.debug

    mako = MakoTemplates(app)

    # 动态注册所有routes下面的模块为blueprint
    for name in all_routes:
        try:
            module = importlib.import_module("portal.routes.{}".format(name))
            if hasattr(module, "blueprint"):
                logger.info("注册Flask路由:{}:{}".format(
                    module.blueprint.name, module.blueprint.url_prefix))
                app.register_blueprint(module.blueprint)
        except Exception as err:
            logger.warning("导入模块:{}失败".format(name), err)

    # 当调用app.run()的时候,用到了Werkzeug库,它会生成一个子进程,当代码有变动的时候它会自动重启
    # 如果在run()里加入参数 use_reloader=False,就会取消这个功能,当然,在以后的代码改动后也不会自动更新了。
    app.run(host=config.flask.host,
            port=config.flask.port,
            use_reloader=config.flask.debug)
Beispiel #10
0
    def setUp(self):
        app = Flask(__name__)
        app.debug = True
        mako = MakoTemplates(app)
        self.app = app
        self.mako = mako

        @app.before_request
        def setup_context():
            g.test_g = "test_g"

        @app.route('/context')
        def context():
            return render_template_string(u"${ g.test_g }")

        @app.route('/templatefile')
        def template_file():
            return render_template('template_file.html', result="succeeds")

        @app.route('/def_file')
        def def_file():
            return render_template_def('def_file.html',
                                       'test_def',
                                       result="This")
Beispiel #11
0
#!/usr/bin/python
# -*- coding:utf-8 -*-
import redis
from flask_mako import MakoTemplates
from flask_sqlalchemy import SQLAlchemy
from flask_login import LoginManager
from flask_wtf import FlaskForm
from wtforms import StringField, PasswordField, SubmitField, BooleanField
from wtforms import validators
from wtforms import widgets
from const import REDIS_DB, REDIS_PORT, REDIS_HOST

rd = redis.Redis(host=REDIS_HOST, port=REDIS_PORT, db=REDIS_DB)
mako = MakoTemplates()
db = SQLAlchemy()
login_manager = LoginManager()
login_manager.login_view = 'login'


class LoginForm(FlaskForm):
    username = StringField(label='用户名',
                           validators=[
                               validators.DataRequired(message='用户名不能为空.'),
                               validators.Length(min=3,
                                                 max=12,
                                                 message='用户名长度3-12'),
                           ],
                           widget=widgets.TextInput(),
                           render_kw={'class': 'form-control'})
    password = PasswordField(label='密码',
                             validators=[
Beispiel #12
0
import io, traceback

from flask import Flask, request, g
from flask import send_file
from flask_mako import MakoTemplates, render_template
from plim import preprocessor

from PIL import Image, ExifTags
from scipy.misc import imresize
import numpy as np
from keras.models import load_model
import tensorflow as tf

app = Flask(__name__, instance_relative_config=True)
mako = MakoTemplates(app)
app.config['MAKO_PREPROCESSOR'] = preprocessor
app.config.from_object('config.ProductionConfig')

model = load_model('./model/main_model.hdf5', compile=False)
graph = tf.get_default_graph()


def ml_predict(image):
    with graph.as_default():
        prediction = model.predict(image[None, :, :, :])
    prediction = prediction.reshape((224, 224, -1))
    return prediction


def rotate_by_exif(image):
    try:
Beispiel #13
0
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
"""Flask webpage for performance data."""

import itertools

# pylint: disable=import-error
import flask
from flask_mako import MakoTemplates, render_template
# pylint: enable=import-error

APP = flask.Flask(__name__)
_ = MakoTemplates(APP)

# pylint: disable=bad-whitespace
_BENCHMARKS = [
    ('fill', 'micro-benchmark'),
    ('fill_o', 'micro-benchmark'),
    ('alu2', 'micro-benchmark'),
    ('alu2_o', 'micro-benchmark'),
    ('driver2', 'micro-benchmark'),
    ('driver2_o', 'micro-benchmark'),
    ('manhattan', 'synthetic-benchmark'),
    ('manhattan_o', 'synthetic-benchmark'),
    ('car_chase', 'synthetic-benchmark'),
    ('car_chase_o', 'synthetic-benchmark'),
    ('tess', 'synthetic-benchmark'),
    ('tess_o', 'synthetic-benchmark'),
Beispiel #14
0
"""
Roshi
~~~~~

Templating plugin.

:copyright: (c) 2017 Derek M. Frank
:license: MPL-2.0

"""
from typing import Optional

from flask_mako import MakoTemplates  # type: ignore

TPL: Optional[MakoTemplates] = MakoTemplates()
def configure_app(mode='debug'):
    MakoTemplates(app)

    debug = mode == 'debug'
    if debug:
        app.env = 'development'
Beispiel #16
0
# -*- coding: utf-8 -*-
"""
Flask app initialization.
"""
from flask import Flask
from flask_mako import MakoTemplates

app = Flask(__name__)  # pylint: disable=invalid-name
MAKO = MakoTemplates(app)