Answer a question

I have the following model:

from django.db import models

class PopulationData(models.Model):
    slot = models.IntegerField(db_index=True)
    sample = models.IntegerField()
    value = models.FloatField()

    class Meta:
        unique_together = (('slot', 'sample'),)

And I would like to create also a compound index on the column pair that have the UNIQUE constraint, like so:

CREATE INDEX my_compound_index ON myapp_populationdata (slot, sample);

Right now I have a separate code connected to the post_syncdb signal that issues the previous SQL statement. Is there any way to indicate it from the model specification? (Note: I'm using the 1.3 branch).

Answers

Starting from django-1.5 you can make compound index using index_together meta option: https://docs.djangoproject.com/en/dev/ref/models/options/#index-together

Logo

Python社区为您提供最前沿的新闻资讯和知识内容

更多推荐