İngilizce'de yabancı dillerin bir listesini gösteren bir seçim menüsüne sahibim. Şu anda sitenin hangi dilde görüntülendiğine bağlı olarak İspanyolca veya Japonca listesini göstermek istiyorum.django formunda belirli tablo sütununu yineleme
Şablon sayfamdaki form, varsayılan olarak en (İngilizce) olarak görüntülenir. Bu benim şablon sayfasında neye benzediği:
{{ form.native }}
My formu sitesi "this_language" parametresinden bakıldığında ediliyor geçerli dilini bilir. Benim formu şuna benzer:
class RegistrationForm(forms.ModelForm):
def __init__(self,*args,**kwargs):
if 'this_language' in kwargs:
this_language = kwargs.pop('this_language')
super(RegistrationForm, self).__init__(*args, **kwargs)
self.fields['native'] = forms.ModelChoiceField(queryset=Language.objects.all().order_by(this_language), empty_label=_('Please select'))
modeli şöyle görünür: Ben değiştirmek modele ya es veya js "self.en dönüş" olabilir fark
class Language(models.Model):
en = models.CharField(max_length=250)
es = models.CharField(max_length=250, null=True)
ja = models.CharField(max_length=250, null=True)
def __unicode__(self):
return self.en
ve ben istenen olsun sonuç.
Bunu dinamik olarak şablon sayfasında veya forms.py'de yapmak mümkün mü?
bir çekicilik çalıştı, teşekkür ederim! –