SORU
20 ŞUBAT 2009, Cuma


Django: bir şablonu birden çok model formları kullanarak

Destek bileti izleme uygulaması inşa ediyorum ve bir sayfa oluşturmak istiyorum birkaç model var. Biletleri bir ForeignKey ile bir Müşteriye ait. Notlar bir ForeignKey üzerinden de Bilet aittir. Bir Müşteri (bu apayrı bir proje) seçmek VEYA yeni bir Müşteri oluşturma seçeneği var, sonra bir Bilet oluşturmak ve son olarak bir Not yeni bilet atanmış oluşturmak istiyorum.

Django için oldukça yeni olduğum için, yinelenen, yeni özellikler her zaman denemeye çalışmak eğilimindedir. ModelForms ile oynadım ama bazı alanları gizlemek ve bazı karmaşık doğrulama yapmak istiyorum. Ya formsets gerektirir ya da elden her şey, sıkıcı bir tam, el-kodlu kaçmaya çalışıyorum hangi şablon sayfa, ne arıyorum kontrol seviyesi gibi görünüyor.

Kaçırdığım güzel bir özelliği var mıdır? Birisi formsets kullanmak için iyi bir referans ya da örnek var mı? Onlar için API docs bütün bir hafta sonu geçirdim ve hala bilgim yok. Eğer aşağı kırılırsa bir tasarım sorunu ve el-kodu her şey bu mu?

CEVAP
12 HAZİRAN 2009, Cuma


Yaklaşık aynı durum bir gün önce oldu, ve burada benim 2 sent:

1) tartışmasız tek form burada birden fazla model girdisi ve en kısa en kısa gösteri buldum: http://collingrady.wordpress.com/2008/02/18/editing-multiple-objects-in-django-with-newforms/ .

Özetle: her model için bir form, onlara <form> kullanarak prefix tek bir keyarg şablon ve görünüm doğrulama işlemek hem teslim Olun. Eğer bağımlılık, sadece "üst"kaydettiğinizden emin olun varsa model önce bağımlı ve "" modeli. çocuk kurtarmak işlemekten önce yabancı anahtar için ebeveynin KİMLİĞİ kullanın Link demo var.

2) Belki formsets bu işin içine dövülmüş olabilir, ama ben delved kadarıyla, formsets öncelikle aynı model katları, girmek içinolabiliristeğe bağlı olarak yabancı anahtarları tarafından başka bir model/modeller bağlı. Ancak, bir modelin veri daha girmek için varsayılan seçenek var ve bu formset için bir anlamı olacak gibi görünüyor.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • DanceOn

    DanceOn

    6 Mayıs 2006
  • TopDJMag TV

    TopDJMag TV

    29 Temmuz 2010
  • Warner Bros. UK

    Warner Bros.

    6 HAZİRAN 2008