ben "-------------" seçim Django kurtulmak istiyorum boş seçim çıkarmadan O varModelChoiceField,
bir ModelForm bir yabancı anahtarı temsil eden seçkin bir giriş ekler been answered, empty_label=none
seçeneğini kullanabilirsiniz, ancak bir ModelForm var, düzenli bir form değil ve alanın geçersiz kılınmasına izin verilmiyor.
ben
self.fields['my_foreign_key'].queryset = ....
kullanarak ModelChoiceField en Sorgu Kümesi değiştirmek için ModelForm arasında __init__()
yöntemini geçersiz biliyoruz Ama bu "Ana" ile ilgili 10 üzerinde foreign_keys olduğu gibi bu, gerçekten çirkin olurdu Model ve bu modelde
bir Modelform orada daha fazla temel alan bütün içeriği: aynı bu foreign_key noktaları
- her biri türden modeller: seçimlerin belirli listeleri, yönetici tarafından değişikliklerini kolaylaştırmak için birçok model.
- Tüm bu modeller, üç harfli bir kod içeren bir Charfield'ı temel alan bir "to_field = code" ilişkisi aracılığıyla Ana modelle ilgilidir (hey, benim hatam değil, eski bir MS Access DB kullanmak zorundaydım), Bu Charfield
blank=True, unique=True
seçenek vardır, bu yüzden, her liste için durum şimdi bahis vardır bir"---No information yet---"
kaydını yerine üç harfli kod boş bir değer ...
oluşturabilirsiniz: Ben olsun iki "boş değer" seçimli bir giriş alanı: django bir ve benim, diğeri birbiri ardına. Eğer böyle bir şey yapabildiği ModelChoiceField
için boş seçim kaldırmak isterseniz Sadece
Sana/yeniden tanımlamak alanını üzerine yazabilirsiniz düşünüyorum. Bunu bir DateTime model alanını TimeField biçimlerine dönüştürmek için yapıyorum (ve DateField öğesinin fazladan bir alanını ekleyin). Sonra tarih ve saat alanlarını birleştirmek için formun clean() yöntemini geçersiz kıldım. –