diff --git a/example/app.py b/example/app.py index 8035cb6..69e0b6e 100644 --- a/example/app.py +++ b/example/app.py @@ -22,7 +22,7 @@ from flask.ext.security.decorators import http_auth_required, \ def create_roles(): for role in ('admin', 'editor', 'author'): - current_app.extensions['security'].datastore.create_role(name=role) + current_app.security.datastore.create_role(name=role) def create_users(): @@ -31,7 +31,7 @@ def create_users(): ('dave@lp.com', 'password', ['admin', 'editor'], True), ('jill@lp.com', 'password', ['author'], True), ('tiya@lp.com', 'password', [], False)): - current_app.extensions['security'].datastore.create_user( + current_app.security.datastore.create_user( email=u[0], password=u[1], roles=u[2], active=u[3]) diff --git a/flask_security/core.py b/flask_security/core.py index 9b776ae..50a1b71 100644 --- a/flask_security/core.py +++ b/flask_security/core.py @@ -208,7 +208,7 @@ class Security(object): """ def __init__(self, app=None, datastore=None, **kwargs): if app is not None and datastore is not None: - self.init_app(app, datastore, **kwargs) + self._state = self.init_app(app, datastore, **kwargs) def init_app(self, app, datastore, register_blueprint=True): """Initializes the Flask-Security extension for the specified @@ -253,6 +253,11 @@ class Security(object): app.extensions['security'] = state + return state + + def __getattr__(self, name): + return getattr(self._state, name, None) + class AuthenticationProvider(object): """The default authentication provider implementation."""