SORU
8 Aralık 2008, PAZARTESİ


Nasıl Django Form Alanları Oluşturmak için Sırasını Biliyor mu?

Eğer Django gibi bir form var:

class ContactForm(forms.Form):
    subject = forms.CharField(max_length=100)
    message = forms.CharField()
    sender = forms.EmailField()

Ve as_table diyorum (yukarıda) belirtildiği gibi aynı sipariş olarak alanlar işlerler Django bu formun bir örneğinin yöntemi.

Benim soru nasıl Django sırasını bilmek sınıfı tanımlanmış değişkenleri nerede?

(Ayrıca nasıl classe bir alan eklemek istediğimde bu sırada, örneğin geçersiz kılarınityöntem?)

CEVAP
28 Temmuz 2009, Salı


[NOT: bu cevap şimdi biraz modası geçmiş - lütfen aşağıya bakınız].

Eğer f bir form ise, kendi alanlarında f.django.utils.datastructures.SortedDict olan alanlar, (eklenen sırası öğeleri sunar). İnşaat f formu sonra.alanlar bir liste sundu gerektiği sırada alan adlarını içeren keyOrder olma özelliği vardır. Sipariş doğru bakım ürünleri ihmal veya ekstra ilave etmemelerini sağlamak için egzersize ihtiyacınız olsa) için bu ayarlayabilirsiniz.

Burada sadece benim geçerli projede oluşturulan bir örnek:

class PrivEdit(ModelForm):
    def __init__(self, *args, **kw):
        super(ModelForm, self).__init__(*args, **kw)
        self.fields.keyOrder = [
            'super_user',
            'all_districts',
            'multi_district',
            'all_schools',
            'manage_users',
            'direct_login',
            'student_detail',
            'license']
    class Meta:
        model = Privilege

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Andrew_Huang

    Andrew_Huang

    10 ŞUBAT 2006
  • Hallucination Land

    Hallucinatio

    14 Ocak 2011
  • pissengehen

    pissengehen

    26 EYLÜL 2006