モデルの多数の遅すぎる:ジャンゴmodelformsetデータ
はclass People(models.Model):
first_name = models.CharField(max_length=30)
last_name = models.CharField(max_length=40)
overview = models.TextField(blank=True)
portrait = models.ImageField(upload_to='images/',blank=True)
class Meta:
unique_together = ('first_name', 'last_name',)
def __unicode__(self):
return u'%s %s' % (self.first_name, self.last_name)
フォーム/フォームセットは:
class PeopleNameForm(forms.ModelForm):
class Meta:
model = People
fields = ('first_name','last_name')
PeopleNameFormSet = modelformset_factory(People, form=PeopleNameForm)
ビュー
:、問題は今
def people(request):
allnames=People.objects.all()
fs = PeopleNameFormSet(queryset=allnames)
return render_to_response('people.html', context_instance=RequestContext(request))
ですfs = PeopleNameFormSet(queryset=allnames)
が実行され、私のMacBook Pro(4Gメモリ)の100Kの名前に約5分かかりますが、allnames=People.objects.all()
は使用しません時間。
私のコードで何が問題になっていますか?ありがとう!
は 'リスト(People.objects.allは())'どのくらいの時間がかかるん...
はあなたの
.all()
クエリを評価するために試してみて、あなたはそれがあまりにも時間がかかる表示されますか?クエリーセットはDjangoで怠惰です。つまり、クエリーが実行されるまで、クエリーは実行されません。それを繰り返す/それをリストに変換する/それからフォームを構成する。 –