2009-06-28 22 views
5

Trong một Django ModelForm, bạn có thể thay đổi kiểu phụ tùng của một trường như vậy:Thay đổi loại trường trong một Django ModelFormset

class EntryForm(ModelForm): 
    entity = forms.CharField() 

    class Meta: 
     model = Entry 

tôi có thể dễ dàng tạo ra một modelformset từ cùng một mô hình như vậy:

EntryFormSet = modelformset_factory(Entry) 

Nhưng có cách nào để bao gồm thay đổi thay đổi loại trường nhập khi tạo một modelformset không?

Trả lời

13

EntryFormSet = modelformset_factory (Entry sau cùng, hình thức = EntryForm)

+0

Sau thiết lập nó như đề nghị ở trên, đi qua entry_formset = EntryFormSet (tiền tố = 'mục') để render_to_response vẫn hiển thị tất cả các trường. Tôi vẫn đang chơi đùa với điều này. –

+0

http://docs.djangoproject.com/en/dev/topics/forms/modelforms/#controlling-which-fields-are-used-with-fields-and-exclude – Harold

+0

Ah - cảm ơn. Tôi mong đợi nó kế thừa những người từ mô hình EntryForm của tôi, mà cũng loại trừ một số lĩnh vực (mà tôi rời ra từ ví dụ trên để đơn giản) –

4

modelformset_factory nhận một đối số từ khóa form, mà - Tôi tin rằng - sẽ cho phép bạn vượt qua lớp mẫu của bạn và có nó được sử dụng ...

Các vấn đề liên quan