[英]Relational Mapping using Peewee
我是关系数据库的新手,我对应该如何创建模型感到很困惑。 我需要完成的工作是通过语言选择来过滤帖子内容,并为此创建一个关系数据库。 当决定我必须完成多少个模型(表)时,我的疑问就来了。 这是一个例子:
models.py
class Post(Model):
timestamp = DateTimeField(default=datetime.datetime.now)
user = ForeignKeyField(
rel_model=User,
related_name='posts'
)
language = TextField()
content = ForeignKeyField(THIS NEEDS TO POINT TO THE LANGUAGE)
class Meta:
database = DATABASE
是否可以完成这样的事情? 我应该创建多个邮政模型吗?
在此先感谢您。
您是否已阅读快速入门指南? 这样做可能会让您感觉如何创建模型和建立关系:
http://docs.peewee-orm.com/zh-CN/latest/peewee/quickstart.html
要回答您的直接问题,您可以创建另一个语言表,即
class Language(Model):
name = CharField()
class Meta:
database = DATABASE
因此,您将在一起(清理了一下):
DATABASE = SqliteDatabase('mydb.db') # or PostgresqlDatabase or MySQLDatabase
class BaseModel(Model):
class Meta:
database = DATABASE
class User(BaseModel):
email = CharField()
# whatever other user fields
class Language(BaseModel):
name = CharField()
# other fields?
class Post(BaseModel):
timestamp = DateTimeField(default=datetime.datetime.now)
user = ForeignKeyField(User, related_name='posts')
language = TextField()
content = ForeignKeyField(Language, related_name='posts')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.