From fbc28f5bbc99b208f3c309b3d47dfbb1e337dca0 Mon Sep 17 00:00:00 2001 From: Roberto Rosario Date: Mon, 24 Aug 2015 03:04:24 -0400 Subject: [PATCH] Index the user field of the recent document model to reduce view rendering as per profiling results. --- .../migrations/0027_auto_20150824_0702.py | 30 +++++++++++++++++++ mayan/apps/documents/models.py | 4 ++- 2 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 mayan/apps/documents/migrations/0027_auto_20150824_0702.py diff --git a/mayan/apps/documents/migrations/0027_auto_20150824_0702.py b/mayan/apps/documents/migrations/0027_auto_20150824_0702.py new file mode 100644 index 0000000000..06c7d2a49a --- /dev/null +++ b/mayan/apps/documents/migrations/0027_auto_20150824_0702.py @@ -0,0 +1,30 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import models, migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('documents', '0026_auto_20150729_2140'), + ] + + operations = [ + migrations.AlterModelOptions( + name='documenttypefilename', + options={'ordering': ('filename',), 'verbose_name': 'Quick rename template', 'verbose_name_plural': 'Quick rename templates'}, + ), + migrations.AlterField( + model_name='document', + name='is_stub', + field=models.BooleanField(default=True, help_text='A document stub is a document with an entry on the database but no file uploaded. This could be an interrupted upload or a deferred upload via the API.', verbose_name='Is stub?', editable=False), + preserve_default=True, + ), + migrations.AlterField( + model_name='documenttypefilename', + name='filename', + field=models.CharField(max_length=128, verbose_name='Label', db_index=True), + preserve_default=True, + ), + ] diff --git a/mayan/apps/documents/models.py b/mayan/apps/documents/models.py index fac226622a..36b7f7c423 100644 --- a/mayan/apps/documents/models.py +++ b/mayan/apps/documents/models.py @@ -756,7 +756,9 @@ class RecentDocument(models.Model): Keeps a list of the n most recent accessed or created document for a given user """ - user = models.ForeignKey(User, editable=False, verbose_name=_('User')) + user = models.ForeignKey( + User, db_index=True, editable=False, verbose_name=_('User') + ) document = models.ForeignKey( Document, editable=False, verbose_name=_('Document') )