Проблема импорта/контекста Flask-SQLAlchemy

Я хочу структурировать свое приложение Flask примерно так:

./site.py
./apps/members/__init__.py
./apps/members/models.py

apps.members— это план Flask.

Теперь, чтобы создать классы моделей, мне нужно иметь доступ к приложению, что-то вроде:

# apps.members.models
from flask import current_app
from flaskext.sqlalchemy import SQLAlchemy

db = SQLAlchemy(current_app)

class Member(db.Model):
    # fields here
    pass

Но если я попытаюсь импортировать эту модель в свое приложение Blueprint, я получу ужасную RuntimeError: работа вне контекста запроса. Как я могу правильно получить свое приложение здесь? Относительный импорт может работать, но он довольно уродлив и имеет свои проблемы с контекстом, например:

from ...site import app

# ValueError: Attempted relative import beyond toplevel package
104
задан Brad Wright 13 March 2012 в 22:07
поделиться