[英]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.