fixed session usage

This commit is contained in:
Oleg Podsadny 2013-06-15 10:25:08 +02:00
parent 5c6b8cca0e
commit a28346caa3
9 changed files with 30 additions and 30 deletions

View File

@ -1,14 +1,11 @@
from flask import Blueprint from flask import Blueprint
from .manager import login_manager, check_valid_login from .manager import login_manager, check_valid_login
from .models import db
auth = Blueprint('auth', __name__, template_folder='../') auth = Blueprint('auth', __name__, template_folder='../')
@auth.record_once @auth.record_once
def on_registered(state): def on_registered(state):
db.init_app(state.app)
login_manager.init_app(state.app) login_manager.init_app(state.app)
state.app.before_request(check_valid_login) state.app.before_request(check_valid_login)

View File

@ -1,8 +1,9 @@
from flask import current_app
from flask.ext.security import UserMixin from flask.ext.security import UserMixin
from flask.ext.sqlalchemy import SQLAlchemy
db = SQLAlchemy() db = current_app.config['db']
ROLE_USER = 0 ROLE_USER = 0
ROLE_ADMIN = 1 ROLE_ADMIN = 1

View File

@ -1,5 +1,5 @@
from .models import db, Author, Book from .models import Author, Book
from .blueprint import book from .blueprint import book
__all__ = ['book', 'db', 'Author', 'Book'] __all__ = ['book', 'Author', 'Book']

View File

@ -1,6 +1,10 @@
from flask import current_app
from flask.ext.admin import Admin from flask.ext.admin import Admin
from flask.ext.admin.contrib.sqlamodel import ModelView from flask.ext.admin.contrib.sqlamodel import ModelView
from pytest_bdd_example.book import Book, db from pytest_bdd_example.book import Book
db = current_app.config['db']
admin = Admin() admin = Admin()
admin.add_view(ModelView(Book, db.Session(), 'books', endpoint='books')) admin.add_view(ModelView(Book, db.session, 'books', endpoint='books'))

View File

@ -1,12 +1,10 @@
from flask import Blueprint from flask import Blueprint
from .models import db
from .admin import admin from .admin import admin
book = Blueprint('book', __name__, template_folder='../') book = Blueprint('book', __name__)
@book.record_once @book.record_once
def on_registered(state): def on_registered(state):
db.init_app(state.app)
admin.init_app(state.app) admin.init_app(state.app)

View File

@ -1,6 +1,6 @@
from flask.ext.sqlalchemy import SQLAlchemy from flask import current_app
db = SQLAlchemy() db = current_app.config['db']
class Author(db.Model): class Author(db.Model):

View File

@ -1,4 +1,4 @@
from .app import app, db from .app import app
__all__ = ['app', 'db'] __all__ = ['app']

View File

@ -1,11 +1,8 @@
from flask import Flask from flask import Flask
from flask.ext.sqlalchemy import SQLAlchemy from flask.ext.sqlalchemy import SQLAlchemy
from pytest_bdd_example.dashboard import settings from pytest_bdd_example.dashboard import settings
from pytest_bdd_example.auth import auth
from pytest_bdd_example.book import book
app = Flask( app = Flask(
__name__, __name__,
@ -13,13 +10,16 @@ app = Flask(
template_folder=settings.TEMPLATES_ROOT, template_folder=settings.TEMPLATES_ROOT,
) )
db = SQLAlchemy(app)
app.config.from_object('pytest_bdd_example.dashboard.settings') app.config.from_object('pytest_bdd_example.dashboard.settings')
app.secret_key = 'A0Zr98j/3yX R~XHH!jmN]LWX/,?RT' app.secret_key = 'A0Zr98j/3yX R~XHH!jmN]LWX/,?RT'
app.register_blueprint(auth, url_prefix='/auth') db = SQLAlchemy(app)
app.register_blueprint(book, url_prefix='/book') app.config['db'] = db
with app.app_context():
from pytest_bdd_example.auth import auth
from pytest_bdd_example.book import book
app.register_blueprint(auth, url_prefix='/auth')
app.register_blueprint(book)

View File

@ -1,6 +1,6 @@
#!/usr/bin/env python #!/usr/bin/env python
from flask.ext.script import Manager, Shell, Server, Command from flask.ext.script import Manager, Shell, Server
from pytest_bdd_example.dashboard import app as dashboard_app from pytest_bdd_example.dashboard import app as dashboard_app
from pytest_bdd_example.shop import app as shop_app from pytest_bdd_example.shop import app as shop_app
@ -15,7 +15,7 @@ def create_app(app=None):
return APPS[app] return APPS[app]
manager = Manager(create_app) manager = Manager(create_app)
manager.add_option("-app", "--application", dest="app", required=True) manager.add_option('-app', '--application', dest='app', required=True)
manager.add_command("runserver", Server("127.0.0.1")) manager.add_command('runserver', Server('127.0.0.1'))
manager.add_command("shell", Shell(use_ipython=True)) manager.add_command('shell', Shell(use_ipython=True))
manager.run() manager.run()