У меня есть модель университета, которая в настоящее время имеет 31 тыс. Объектов в базе данных. Университетский клуб или объект доменного имени имеет университет в качестве внешнего ключа и многие ко многим объектам, поэтому он просматривает все объекты в домене, который ломает страницу.
Я добавил класс для оптимизации возвращаемого списка, но на самом деле он не дал желаемых результатов.
Есть ли способ лучше отфильтровать запрос, возможно, добавить какой-нибудь поиск вместо выпадающего списка?
модели:
class UniversityClub(models.Model):
university = models.ManyToManyField(University)
name = models.CharField(max_length=250)
address = models.CharField(max_length=250)
privacy = models.IntegerField( choices=PRIVACY, default=INVITE)
def __str__(self):
return self.university.name + ' - ' + self.name
class UniversityEmailDomain(models.Model):
name = models.CharField(max_length=100, unique=True)
def __str__(self):
return self.name
class University(models.Model):
name = models.CharField(max_length=250)
address = models.CharField(max_length=250)
location = models.PointField(srid=4326)
просмотров:
class MappingDomainNameForm(forms.ModelForm):
email_domains = forms.MultipleChoiceField(required=False,
choices=UniversityEmailDomain.objects.values_list('id', 'name'))
main_campus = forms.ChoiceField(required=False,
choices=University.objects.values_list('id', 'name'))
class Meta:
model = University
fields = '__all__'
admin.site.register(UniversityEmailDomain)
@admin.register(University)
class UniversityAdmin(OSMGeoAdmin):
list_display = ('name', 'address', 'location')
search_fields = ('name',)
form = MappingDomainNameForm