【发布时间】:2021-06-03 22:24:33
【问题描述】:
我有这样一个关系many2many的数据库
association_table = db.Table('association',
db.Column('meal_id', db.Integer, db.ForeignKey('meals.id')),
db.Column('order_id', db.Integer, db.ForeignKey('orders.id'))
)
class Order(db.Model):
__tablename__ = 'orders'
id = db.Column(db.Integer, primary_key=True)
data = db.Column(db.String)
meals = db.relationship(
"Meals", secondary=association_table, back_populates="orders"
)
class Meals(db.Model):
__tablename__ = 'meals'
id = db.Column(db.Integer, primary_key=True)
title = db.Column(db.String, unique=True)
price = db.Column(db.Float)
orders = db.relationship(
"Order", secondary=association_table, back_populates="meals"
)
我尝试向表 Order 插入数据
order_to_database = Order (data='05_03_2021',
meals = 1
)
db.session.add(order_to_database)
db.session.commit()
meals 是膳食的 id。我出错了:
我应该如何解决这个问题?
【问题讨论】:
-
meals应该是Meals的实例,而不是整数。 -
如何在表中插入数据?
标签: python flask sqlalchemy many-to-many