比方說,比如我有一個名爲「客戶端」模式和一個名爲「PHONENUMBERS」Django的形式多對多場50萬級的對象超時
class PhoneNumbers(models.Model):
number = forms.IntegerField()
class Client(models.Model):
number = forms.ManyToManyField(PhoneNumbers)
客戶端有一個PHONENUMBERS關係多對多模式。 PhoneNumbers擁有將近500,000條記錄,因此當從模型窗體編輯客戶端記錄並使用隨M2M提供的MultiSelect小部件時,需要永久加載。事實上,它從來沒有。它只是在那裏試圖加載所有我假設的電話對象。
我的解決方法是使用ajax和jquery編輯客戶端記錄中的電話號碼。在浪費我所有的時間之前,我想看看是否有另一種方式去解決它,而不會讓我的頁面掛起。
非常感謝您的更新。我使用的是使用Django 1.3的modelformset_factory,我不相信允許'widget'kwarg被傳遞,但我會嘗試以某種方式實現並讓你知道結果。 – Austin 2013-05-12 21:43:57
modelformset_factory採用選項表單對象。 'myModelFormset = modelformset_factory(Author,form = AuthorForm)'see:http://stackoverflow.com/questions/2853350/using-a-custom-form-in-a-modelformset-factory和https://docs.djangoproject。 COM/EN/1.5/REF /表格/模型/#django.forms.models.modelformset_factory – 2013-05-13 14:36:10