Здравствуйте, у меня проблема с некоторыми внешними ключами.
У меня есть что-то вроде этого:
class Foo(db.Model):
"""The foo object."""
__tablename__ = 'foos_foo'
id = db.Column(db.Integer, primary_key=True)
title = db.Column(db.Text, unique=True)
content = db.Column(db.Text)
bar = db.relationship('Bar', backref='bars_bar')
bar_id = db.Column(db.Integer, db.ForeignKey('bars_bar.id'))
class Bar(db.Model):
"""The bar object."""
__tablename__ = 'bars_bar'
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.Text, unique=True)
description = db.Column(db.Text)
status = db.Column(db.SmallInteger, default=NEW)
Я использую этот стиль конфигурации: https://github.com/mitsuhiko/flask/wiki/Large-app-how-to
Итак, у меня есть что-то вроде этого:
from app.foos.views import mod as foosModule
from app.bars.views import mod as barsModule
app.register_blueprint(foosModule)
app.register_blueprint(barsModule)
Если я вызову, как в стиле конфигурации от Mitsuhiko, python shell.py, появится эта ошибка:
sqlalchemy.exc.OperationalError: (OperationalError) no such table: bars_bar u'SELECT bars_bar.id AS bars_bar_id, bars_bar.name AS bars_bar_name, bars_bar.description AS bars_bar_description, bars_bar.status AS bars_bar_status \nFROM bars_bar' ()
Что там происходит? Да таблицы там нет, потому что я ее создам? Есть ли способ создать некоторые таблицы перед другими? Или что я не так?
Спасибо за ваше время!