如何在 django 中对索引 db 进行分组
Posted
技术标签:
【中文标题】如何在 django 中对索引 db 进行分组【英文标题】:how to group index db in django 【发布时间】:2020-11-05 12:19:21 【问题描述】:我在模型文件中创建索引时遇到问题,我需要将这样的索引(dt_cot,dt_cri)和另一个组索引(id_inv)分组到一个表中,我的代码如下:
class ModelTable(models.Model):
name = models.CharField(max_length=30)
class Meta:
indexes01 = [models.Index(fields=['dt_cot', 'dt_cri'])]
indexes02 = [models.Index(fields=['id_inv'])]
问题是当我执行“makemigrations”时,错误显示:“TypeError: 'class Meta' got invalid attribute(s): index01, index02”。
请问如何对索引进行分组。
问候。
【问题讨论】:
【参考方案1】:indexes
[Django-doc] 是Index
对象的列表,所以:
class ModelTable(models.Model):
name = models.CharField(max_length=30)
class Meta:
indexes = [
models.Index(fields=['dt_cot', 'dt_cri']),
models.Index(fields=['id_inv'])
]
对于单个字段的索引,您可以使用db_index=…
parameter [Django-doc],例如:
class ModelTable(models.Model):
name = models.CharField(max_length=30)
id_inv = models.CharField(max_length=30, db_index=True)
class Meta:
indexes = [
models.Index(fields=['dt_cot', 'dt_cri'])
]
【讨论】:
以上是关于如何在 django 中对索引 db 进行分组的主要内容,如果未能解决你的问题,请参考以下文章
Django:如何在 Postgresql 中对日语(多字节字符串)进行全文搜索