2011-05-16 22 views
7

form alanları için benzersiz kimlikler:Django, basit bir Django form var

class CommentForm(forms.Form): 
    comment = forms.CharField(max_length=2000, required=True) 
    post_id = forms.CharField(max_length=2000, widget=forms.HiddenInput, required=True) 
    parent_id = forms.CharField(max_length=2000, widget=forms.HiddenInput, required=True) 

Şimdi Sayfamda birkaç kez bu formu yazdırmak istediğiniz - Bir şablon etiketi yoluyla yapıyorum, bu yüzden yeni bir form her seferinde oluşturulur. Sorun şu ki, tüm alanlar için aynı kimliği alıyorum.

Önek hakkında biliyorum, ancak alan adlarını değiştirmek istemiyorum, çünkü tüm formlar için yalnızca bir tanıtıcı, benzersiz kimlikleri ayarlamak için vardır.

Benim soru:

  • Bir formu birkaç kez çıktı istiyorsanız Django alanların isimlerini değiştirmeden, benzersiz kimlikler set yapmak için bir yolu var mı? Değilse, Django'yu hiç kimlik çıkışı yapmamak için bir yol var mı? Eğer

    burada göz Bu formda yeni bir örneğini oluştururken

+2

Django form kümelerine baktınız mı? Bir sayfada aynı formdaki birden çok örneği yönetmenize izin verir: http://docs.djangoproject.com/en/dev/topics/forms/formsets/ –

+0

@pastylegs, bağlantı için teşekkürler. Formları kullanamıyorum çünkü her form farklı başlangıç ​​parametrelerine sahip. –

+0

Form formundaki formları, formların üzerinde döngü yaparak ayrı ilk verilerle doldurmanız gerekir. Bazı örneklere bir göz atın. Formsets geri kalanı kadar iyi belgelenmiş gibi görünmüyor ama onlar oldukça güçlü –

cevap