
Untitled
By: a guest on
May 7th, 2012 | syntax:
None | size: 0.90 KB | hits: 10 | expires: Never
How to make the ContentType foreignkey i18n?
from django.utils.translation import ugettext_lazy as _
class Event(models.Model):
...
class Meta:
verbose_name = _(u'Event')
verbose_name_plural = _(u'Events')
def content_type_choices(**kwargs):
content_types = []
for content_type in ContentType.objects.filter(**kwargs):
content_types.append((content_type.pk, content_type.model_class()._meta.verbose_name))
return content_types
LIMIT_CHOICES_TO = {'model__startswith': 'pageapp_'}
class PageWAForm(forms.ModelForm):
app_page_type = forms.ModelChoiceField(queryset=ContentType.objects.filter(**LIMIT_CHOICES_TO),
empty_label=None)
def __init__(self, *args, **kwargs):
super(PageWAForm, self).__init__(*args, **kwargs)
self.fields['app_page_type'].choices = content_type_choices(**LIMIT_CHOICES_TO)