首先我定义了三个表
registerations = db.Table()
class Student(db.Model):
class Class(db.Model):
我可以用
student.classes.append(class1)
student.classes.append(class2)
student.classes.append(class3)
student.classes.append(class4)
在联结表中添加信息,效果很好
但我的问题是如何立即将所有课程添加到学生
student.classes.somemethod(class1, class2, class3, class4)
并且有一种方法可以做到这一点>>或者我必须自己编写一个函数..
答案 0 :(得分:4)
SQLAlchemy处理与类似列表的接口的多对多关系。您可以使用append
方法添加单个项目:
student.classes.append(class1)
您可以使用extend
方法添加可迭代的所有项目:
student.classes.extend([class1, class2, class3, class4])
SQLAlchemy docs谈论在集合上自动实现哪些类似列表的方法。