TranslationPool should now return only translations in languages defined in settings.LANGUAGES

This commit is contained in:
Kris 2011-09-03 11:11:16 +01:00
parent 5f4d68fdb9
commit 05097785c8
2 changed files with 3 additions and 5 deletions

View File

@ -18,9 +18,7 @@ def render_language_choices(obj, request):
if not hasattr(obj, 'translations'):
annotate_with_translations(obj)
language = getattr(request, 'LANGUAGE_CODE', settings.LANGUAGE_CODE)
languages = [language_code for language_code, language_name in settings.LANGUAGES]
translations = [translation for translation in obj.translations if translation.language in languages]
translations = [translation for translation in translations if translation.language != language]
translations = [translation for translation in obj.translations if translation.language != language]
opts = obj.__class__._meta
app_label = opts.app_label
return render_to_string([

View File

@ -80,9 +80,9 @@ class TranslationPool(object):
if self.is_registered_translation(model):
instance = getattr(list_or_instance, \
self.get_info(model).translation_of_field)
languages = [language_code for language_code, language_name in settings.LANGUAGES]
list_or_instance.translations = list(getattr(instance, \
self.get_info(model).translations_of_accessor).all())
self.get_info(model).translations_of_accessor).filter(**{'%s__in' % self.language_field: languages}))
return list_or_instance
else:
result_list = list_or_instance