我有我想建模的现有数据。它本质上是:
class Investor(db.Model):
id = db.Column(id, primary_key=True)
investments = db.relationship('Investments', backref='investor')
class Round(db.Model):
id = db.Column('id', primary_key=True)
investments = db.Table(
'investments',
db.Column('investor_id', db.ForeignKey('investor.id')),
db.Column('round_id', db.ForeignKey('round.id')),
)
现在,每次尝试执行这个小模型时,都会出现以下错误: 表达'投资'找不到名字
我理解,投资需要成为一个类,但我已经尝试用db.model创建一个虚拟类,但它还没有真正起作用。在那个版本中,我遇到了要求主要连接或映射器的问题。我很困惑,一点指导会有很大帮助。
答案 0 :(得分:1)
如果多对多关系介于Investor
和Round
之间,您可以按如下方式定义模型:
class Investor(db.Model):
id = db.Column(db.Integer, primary_key=True)
rounds = db.relationship('Round', secondary=investments, backref='investor')
class Round(db.Model):
id = db.Column(db.Integer, primary_key=True)
investments = db.Table(
'investments',
db.Column('investor_id', db.Integer, db.ForeignKey('investor.id')),
db.Column('round_id', db.Integer, db.ForeignKey('round.id')))