diff --git a/src/pretix/base/migrations/0025_auto_20160802_2202.py b/src/pretix/base/migrations/0025_auto_20160802_2202.py new file mode 100644 index 0000000000..7385dfd221 --- /dev/null +++ b/src/pretix/base/migrations/0025_auto_20160802_2202.py @@ -0,0 +1,52 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.9.4 on 2016-08-02 22:02 +from __future__ import unicode_literals + +from django.db import migrations, models +import pretix.base.models.orders +import pretix.base.models.vouchers + + +class Migration(migrations.Migration): + + dependencies = [ + ('pretixbase', '0024_auto_20160728_1725'), + ] + + operations = [ + migrations.AlterField( + model_name='logentry', + name='datetime', + field=models.DateTimeField(auto_now_add=True, db_index=True), + ), + migrations.AlterField( + model_name='logentry', + name='object_id', + field=models.PositiveIntegerField(db_index=True), + ), + migrations.AlterField( + model_name='order', + name='code', + field=models.CharField(db_index=True, max_length=16, verbose_name='Order code'), + ), + migrations.AlterField( + model_name='order', + name='status', + field=models.CharField(choices=[('n', 'pending'), ('p', 'paid'), ('e', 'expired'), ('c', 'cancelled'), ('r', 'refunded')], db_index=True, max_length=3, verbose_name='Status'), + ), + migrations.AlterField( + model_name='orderposition', + name='secret', + field=models.CharField(db_index=True, default=pretix.base.models.orders.generate_position_secret, max_length=64), + ), + migrations.AlterField( + model_name='voucher', + name='code', + field=models.CharField(db_index=True, default=pretix.base.models.vouchers.generate_code, max_length=255, verbose_name='Voucher code'), + ), + migrations.AlterField( + model_name='voucher', + name='tag', + field=models.CharField(blank=True, db_index=True, help_text='You can use this field to group multiple vouchers together. If you enter the same value for multiple vouchers, you can get statistics on how many of them have been redeemed etc.', max_length=255, verbose_name='Tag'), + ), + ] diff --git a/src/pretix/base/models/log.py b/src/pretix/base/models/log.py index de1d259077..02de810f8c 100644 --- a/src/pretix/base/models/log.py +++ b/src/pretix/base/models/log.py @@ -23,9 +23,9 @@ class LogEntry(models.Model): :type data: str """ content_type = models.ForeignKey(ContentType, on_delete=models.CASCADE) - object_id = models.PositiveIntegerField() + object_id = models.PositiveIntegerField(db_index=True) content_object = GenericForeignKey('content_type', 'object_id') - datetime = models.DateTimeField(auto_now_add=True) + datetime = models.DateTimeField(auto_now_add=True, db_index=True) user = models.ForeignKey('User', null=True, blank=True, on_delete=models.PROTECT) event = models.ForeignKey('Event', null=True, blank=True, on_delete=models.CASCADE) action_type = models.CharField(max_length=255) diff --git a/src/pretix/base/models/orders.py b/src/pretix/base/models/orders.py index 952e926e9e..377c6d3860 100644 --- a/src/pretix/base/models/orders.py +++ b/src/pretix/base/models/orders.py @@ -90,12 +90,14 @@ class Order(LoggedModel): code = models.CharField( max_length=16, - verbose_name=_("Order code") + verbose_name=_("Order code"), + db_index=True ) status = models.CharField( max_length=3, choices=STATUS_CHOICE, - verbose_name=_("Status") + verbose_name=_("Status"), + db_index=True ) event = models.ForeignKey( Event, @@ -426,7 +428,7 @@ class OrderPosition(AbstractPosition): max_digits=10, decimal_places=2, verbose_name=_('Tax value') ) - secret = models.CharField(max_length=64, default=generate_position_secret) + secret = models.CharField(max_length=64, default=generate_position_secret, db_index=True) class Meta: verbose_name = _("Order position") diff --git a/src/pretix/base/models/vouchers.py b/src/pretix/base/models/vouchers.py index d1d60b982f..309e0ce576 100644 --- a/src/pretix/base/models/vouchers.py +++ b/src/pretix/base/models/vouchers.py @@ -56,7 +56,8 @@ class Voucher(LoggedModel): ) code = models.CharField( verbose_name=_("Voucher code"), - max_length=255, default=generate_code + max_length=255, default=generate_code, + db_index=True, ) redeemed = models.BooleanField( verbose_name=_("Redeemed"), @@ -114,6 +115,7 @@ class Voucher(LoggedModel): max_length=255, verbose_name=_("Tag"), blank=True, + db_index=True, help_text=_("You can use this field to group multiple vouchers together. If you enter the same value for " "multiple vouchers, you can get statistics on how many of them have been redeemed etc.") )