2013-07-06 242 views
1

你好,我有一些外键的问题。烧瓶,SQLAlchemy,外键

我有这样的事情:

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'() 

那里发生了什么?是的,桌子不在那里,因为我会创造它?有没有办法在其他之前创建一些表格?或者我错了什么?

谢谢你的时间!

回答