create indexes

This commit is contained in:
smilerz
2021-05-30 08:57:09 -05:00
parent 8c1cccb7a2
commit a956868eaf
2 changed files with 44 additions and 3 deletions

View File

@ -10,6 +10,7 @@ from django.contrib.postgres.indexes import GinIndex
from django.contrib.postgres.search import SearchVectorField
from django.core.validators import MinLengthValidator
from django.db import models
from django.db.models import Index
from django.utils import timezone
from django.utils.translation import gettext as _
from django_prometheus.models import ExportModelOperationsMixin
@ -271,6 +272,7 @@ class Keyword(ExportModelOperationsMixin('keyword'), models.Model, PermissionMod
class Meta:
unique_together = (('space', 'name'),)
indexes = (Index(fields=['id', 'name']), )
class Unit(ExportModelOperationsMixin('unit'), models.Model, PermissionModelMixin):
@ -302,6 +304,7 @@ class Food(ExportModelOperationsMixin('food'), models.Model, PermissionModelMixi
class Meta:
unique_together = (('space', 'name'),)
indexes = (Index(fields=['id', 'name']), )
class Ingredient(ExportModelOperationsMixin('ingredient'), models.Model, PermissionModelMixin):
@ -327,6 +330,7 @@ class Ingredient(ExportModelOperationsMixin('ingredient'), models.Model, Permiss
class Meta:
ordering = ['order', 'pk']
indexes = (Index(fields=['id', 'food', 'unit']), )
class Step(ExportModelOperationsMixin('step'), models.Model, PermissionModelMixin):
@ -361,7 +365,7 @@ class Step(ExportModelOperationsMixin('step'), models.Model, PermissionModelMixi
class Meta:
ordering = ['order', 'pk']
indexes = (GinIndex(fields=["search_vector"]),)
indexes = (GinIndex(fields=["search_vector"]), )
class NutritionInformation(models.Model, PermissionModelMixin):
@ -427,7 +431,7 @@ class Recipe(models.Model, PermissionModelMixin):
return self.name
class Meta():
indexes = (GinIndex(fields=["name_search_vector", "desc_search_vector"]),)
indexes = (GinIndex(fields=["name_search_vector", "desc_search_vector"]), Index(fields=['id', 'name', 'description']), )
class Comment(ExportModelOperationsMixin('comment'), models.Model, PermissionModelMixin):
@ -477,6 +481,9 @@ class RecipeBook(ExportModelOperationsMixin('book'), models.Model, PermissionMod
def __str__(self):
return self.name
class Meta():
indexes = (Index(fields=['name', 'description']), )
class RecipeBookEntry(ExportModelOperationsMixin('book_entry'), models.Model, PermissionModelMixin):
recipe = models.ForeignKey(Recipe, on_delete=models.CASCADE)
@ -672,6 +679,9 @@ class CookLog(ExportModelOperationsMixin('cook_log'), models.Model, PermissionMo
def __str__(self):
return self.recipe.name
class Meta():
indexes = (Index(fields=['id', 'recipe', '-created_at', 'rating']), )
class ViewLog(ExportModelOperationsMixin('view_log'), models.Model, PermissionModelMixin):
recipe = models.ForeignKey(Recipe, on_delete=models.CASCADE)
@ -684,6 +694,9 @@ class ViewLog(ExportModelOperationsMixin('view_log'), models.Model, PermissionMo
def __str__(self):
return self.recipe.name
class Meta():
indexes = (Index(fields=['recipe', '-created_at']), )
class ImportLog(models.Model, PermissionModelMixin):
type = models.CharField(max_length=32)