1- from __future__ import absolute_import
21# coding=utf-8
2+ from __future__ import absolute_import
33import os
44
5- from flask import Flask , g , request
6- from flask_mako import render_template
5+ from flask import Flask , g , request , send_from_directory
76from flask_security import MongoEngineUserDatastore
87from flask_social_blueprint .core import SocialBlueprint
98
109from firefly import config as _config
1110from firefly .ext import (
12- api , babel , cache , db , login_manager , mail , mako ,
13- redis_store , security
11+ api , babel , cache , db , login_manager , mail , redis_store , security
1412)
1513from firefly .models .user import User , SocialConnection , Role
1614from firefly .utils import send_mail
15+ from firefly .libs .template import render_template
1716
1817
1918def create_app (config ):
@@ -34,18 +33,23 @@ def create_app(config):
3433 cache .init_app (app )
3534 db .init_app (app )
3635 mail .init_app (app )
37- mako .init_app (app )
3836 redis_store .init_app (app )
3937
4038 register_auth (app )
4139 register_hooks (app )
40+ register_static (app )
4241 register_blueprints (app )
4342 configure_error_handles (app )
4443 plug_to_db (db )
4544
4645 return app
4746
4847
48+ def register_static (app ):
49+ app .route ('/static/<path:filename>' )(
50+ lambda filename : send_from_directory ('static' , filename ))
51+
52+
4953def register_auth (app ):
5054 def load_user (user_id ):
5155 return User .objects (_id = user_id )
@@ -57,7 +61,6 @@ def load_user(user_id):
5761 # Setup Flask-Security
5862 security .init_app (app , MongoEngineUserDatastore (db , User , Role ))
5963 state = app .extensions ['security' ]
60- state .render_template = render_template
6164 state .send_mail_task (send_mail )
6265 app .extensions ['security' ] = state
6366
@@ -68,11 +71,11 @@ def configure_error_handles(app):
6871
6972 @app .errorhandler (403 )
7073 def forbidden_page (error ):
71- return render_template ('403.html' )
74+ return render_template ('403.html' ), 403
7275
7376 @app .errorhandler (404 )
7477 def not_found_page (error ):
75- return render_template ('404.html' )
78+ return render_template ('404.html' ), 404
7679
7780
7881def register_blueprints (app ):
0 commit comments