web-dev-qa-db-ja.com

FlaskでファイルごとにSQLAlchemyモデルを分離します

Flask私が見たアプリの多くの例では、モデルがメインアプリファイルに直接保存されています( http://pythonhosted.org/Flask-SQLAlchemy/quickstart.html =、 http://maximebf.com/blog/2012/10/building-websites-in-python-with-flask/ )。その他( http:// flask。 pocoo.org/docs/patterns/sqlalchemy/ )には、モデルが配置される「models.py」ファイルがあります。

どうすればFlaskアプリインポートモデルを個別のファイル、たとえば「User.py」からインポートできますか?これらのコンテンツでUser.pyファイルを作成しようとすると:

from app import db

class User(db.Model):
    [...]

次のエラーが表示されます。

File "/Users/stackoverflow/myapp/models/User.py", line 1, in <module>
from app import db
ImportError: No module named app

モジュールファイルにfrom models import Userを挿入したとき。

32
element119

この回答は非常に役に立ちました: https://stackoverflow.com/a/9695045/353878

データベースをすぐに初期化しないようにする必要がありました。

24
element119