Django админ меняет загрузку формы довольно медленно
На одном из моих сайтов Django есть следующие модели баз данных: In Django App «общий»:
class Collection(models.Model):
name = models.CharField(max_length = 255, unique = True)
_short_name = models.CharField(db_column="short_name", max_length = 32, blank=True)
class Particle(models.Model):
content = models.TextField(blank=False)
owner = models.ForeignKey(Collection)
order = models.IntegerField(null=True, blank=True)
В приложении Джанго »ситком»:
class Media(models.Model):
name = models.CharField(max_length = 248)
_short_name = models.CharField(db_column="short_name", max_length = 32, blank=True)
capital = models.CharField(max_length = 1)
description = models.TextField(blank=True)
progress = models.CharField(max_length = 32, blank=True, null=True)
class Relation(models.Model):
name = models.CharField(max_length = 128)
_short_name = models.CharField(db_column="short_name", max_length = 32, blank=True)
description = models.TextField(blank=True)
parent = models.ForeignKey('self', blank=True, null=True)
order = models.IntegerField(blank=True, null=True)
particle = models.ForeignKey(Particle, blank=True, null=True)
media = models.ForeignKey(Media, blank=True, null=True)
Вкратце, модель класса Relation имеет 3 внешних ключа для других таблиц. Проблема в том, что когда я использую Django Admin для изменения одного отношения, страница (change_form) загружается довольно медленно. Позже я изменил модель класса Relation следующим образом:
class Relation(models.Model):
name = models.CharField(max_length = 128)
_short_name = models.CharField(db_column="short_name", max_length = 32, blank=True)
description = models.TextField(blank=True)
order = models.IntegerField(blank=True, null=True)
parent_id = models.IntegerField(blank=True, null=True)
particle_id = models.IntegerField(blank=True, null=True)
media_id = models.IntegerField(blank=True, null=True)
Модификация изменила Foreign Keys на IntegerFields, поэтому она отключила некоторые магические эффекты в системе Django ORM, и теперь страница формы изменений загружается очень быстро. У меня вопрос, что такое «отключенная магия внутри Django Orm »? что может вызвать проблему?