如何创建具有 PrimaryKeyField 和 ForeignKeyField 的对象? Python Flask PeeWee
How to create a Object that has PrimaryKeyField and ForeignKeyField ? Python Flask PeeWee
类:
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 和类型 user 中输入什么?
我应该如何获取用户的所有提要?
用这样的东西?
feedsofuserTom = Feed.select().where(Feed.user == userTom)
我不明白 ForeignKeyField() 函数,我阅读了文档,但示例对我不起作用。 http://docs.peewee-orm.com/en/latest/peewee/models.html
ForeignKey 是模型之间的关系。
ForeignKey 是 ManyToOne 关系。
因此,对于您的 Feed,您可以关联任意数量的用户。
因此在您的示例中,首先您必须创建用户实例。然后在创建 Feed 时添加它。
first_user = User.create(social_id=1, 昵称=名字, 邮箱="email")
newfeed = Feed.create(user=first_user, title="cool feed", url="url.com", description="description")
据我所知,您不必添加 PrimaryKeyField()。该字段将由数据库自动添加。
类:
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 和类型 user 中输入什么?
我应该如何获取用户的所有提要? 用这样的东西?
feedsofuserTom = Feed.select().where(Feed.user == userTom)
我不明白 ForeignKeyField() 函数,我阅读了文档,但示例对我不起作用。 http://docs.peewee-orm.com/en/latest/peewee/models.html
ForeignKey 是模型之间的关系。 ForeignKey 是 ManyToOne 关系。 因此,对于您的 Feed,您可以关联任意数量的用户。
因此在您的示例中,首先您必须创建用户实例。然后在创建 Feed 时添加它。 first_user = User.create(social_id=1, 昵称=名字, 邮箱="email") newfeed = Feed.create(user=first_user, title="cool feed", url="url.com", description="description")
据我所知,您不必添加 PrimaryKeyField()。该字段将由数据库自动添加。