Stu*_*Cat 1 python sqlite orm peewee
假设我有一个名为TBL_ACCOUNT的表,其中包含我的所有用户,还有一个名为TBL_EMAIL_SUBSCRIPTION的表,其中包含用户已订阅的提要。我正在尝试使其每个用户+ feed组合中只有一个条目,因此user1只能订阅一次feed1,但是user1可以同时订阅feed1和feed2。
这是我的模型的样子:
class TBL_ACCOUNT(BaseModel):
USERNAME = CharField(unique=True)
PASSWORD = CharField()
EMAIL = CharField(unique=True)
class TBL_EMAIL_SUBSCRIPTION(BaseModel):
USER = ForeignKeyField(TBL_ACCOUNT)
FEED = CharField()
class Meta:
indexes = (("USER_id", "FEED", True))
Run Code Online (Sandbox Code Playgroud)
我也尝试过仅使用“ USER”作为索引,但是由于数据库仍然收到重复项,因此无法解决。
小智 6
请参考peewee文档:http ://docs.peewee-orm.com/zh-CN/latest/peewee/models.html#indexes-and-constraints
在您的情况下,它应如下所示:
class Meta:
indexes = (
(("USER_id", "FEED"), True),
)
Run Code Online (Sandbox Code Playgroud)
注意使用逗号!它们非常重要,因为索引是元组的元组。
| 归档时间: |
|
| 查看次数: |
3238 次 |
| 最近记录: |