班级:
class User(flask_db.Model, UserMixin):
id = PrimaryKeyField()
social_id = CharField(null=False, unique=True)
nickname = CharField(null=False)
email = CharField(null=True)
class Feed(flask_db.Model):
id = PrimaryKeyField()
user = ForeignKeyField(User, related_name='feeds')
title = CharField()
url = CharField()
description = CharField()
如果我这样做:
newfeed = Feed.create(..)
我应该在类型ID和类型用户中添加什么?
我应该如何获得用户的所有Feed? 有这样的东西?
feedsofuserTom = Feed.select().where(Feed.user == userTom)
我不理解ForeignKeyField()函数,我阅读了文档,但示例对我不起作用。 http://docs.peewee-orm.com/en/latest/peewee/models.html
答案 0 :(得分:1)
ForeignKey是模型之间的关系。 ForeignKey是ManyToOne关系。 因此,对于您的Feed,您可以根据需要关联尽可能多的用户。
因此,在您的示例中,首先必须创建User instanse。然后在创建Feed时添加它。 first_user = User.create(social_id = 1,nickname = name,email =" email") newfeed = Feed.create(user = first_user,title =" cool feed",url =" url.com",description =" description")
据我所知,你不必添加PrimaryKeyField()。该字段将由数据库自动添加。