1
当试图导航到Django admin中的'添加演示文稿'时,我必须等待大约1分钟才能呈现响应。问题是我在数据库中有大约500张幻灯片,管理员在三次不同的时间选择所有的幻灯片以填充菜单。我显然在模型定义上做了错误的事情,因为我不希望这么多的数据会让我的服务器瘫痪。为什么我以我定义的关系或使用django管理员的方式遇到此问题的任何可见性?与Django中许多行崩溃的内联堆叠在一起
class PresentationTitle(models.Model):
title = models.CharField(max_length=255)
order_number = models.IntegerField(default=0)
def __unicode__(self):
return self.title
class PresentationUser(models.Model):
user = models.OneToOneField(User)
authorized_modules = models.ManyToManyField(PresentationTitle)
class Presentation(models.Model):
title = models.ForeignKey(PresentationTitle)
user = models.ForeignKey(PresentationUser)
presentation_date = models.DateTimeField()
def __unicode__(self):
return self.title.title
class Slide(models.Model):
....
submodule = models.ForeignKey(Submodule)
presentation = models.ManyToManyField(Presentation, through='PresentationSlide')
...
class Meta:
order_with_respect_to = 'submodule'
ordering = ['order']
class PresentationSlide(models.Model):
presentation = models.ForeignKey(Presentation)
slide = models.ForeignKey(Slide)
slide_order = models.IntegerField()
此外,我的管理包括:
class PresentationSlideInline(admin.StackedInline):
model = PresentationSlide
class PresentationAdmin(admin.ModelAdmin):
inlines = [PresentationSlideInline]
admin.site.register(Presentation, PresentationAdmin)
可以理解的是,除去刚刚从admin.site.register
有PresentationAdmin使得加载非常响应。
你有任何意见与这些模型相关联,或者你只是使用内置的管理模块? – DZittersteyn
这些只是内置的管理模块。视图上没有自定义 - 只需在管理员中为演示文稿声明StackedInline即可。 –
这是什么:return self.title.title?我认为这是一个错误。 – sergzach