有没有一种方法可以在没有 index_together Meta 选项的情况下定义多字段索引?

Is there a way to define multi-field index without index_together Meta option?

我正在处理一个使用 django 1.4 的遗留 django 项目。 对于新模型,我尝试添加一个多字段索引:

class Meta:
     index_together = [
         ["user","is_read"],
     ]

事实证明 index_together 在 django 1.4 中还不被支持。

我的问题是,在不使用 index_together 功能的情况下,django ORM 中是否有任何方法可以定义多字段索引?

在 Django 1.4 中没有 index_together 的替代品。

但是,您可以编写原始 SQL 来创建索引。如果您将它包含在您的 initial sql data 中,Django 将在创建表后 运行 它。

如果你已经创建了表,你可以打开一个dbshell和运行SQL命令来创建索引。