diff --git a/newsbox_i18n/models.py b/newsbox_i18n/models.py index 4f393d0c4f0cf3b92853c74eee41b93f4194a8c0..bd815ecc4e853edafd15f7283f70adace4fb6b67 100644 --- a/newsbox_i18n/models.py +++ b/newsbox_i18n/models.py @@ -5,14 +5,20 @@ from django.core.urlresolvers import reverse from django.utils.translation import ugettext_lazy as _, get_language, activate from django.utils import six from django.utils.encoding import python_2_unicode_compatible -from parler.managers import TranslatableManager +from parler.managers import TranslatableManager, TranslatableQuerySet from parler.models import TranslatableModel, TranslatedFields from newsbox.models import NewsboxModelBase, NewsboxManager -class NewsboxI18NManager(TranslatableManager, NewsboxManager): +class NewsboxI18NQueryset(TranslatableQuerySet): pass + +class NewsboxI18NManager(TranslatableManager, NewsboxManager): + + queryset_class = NewsboxI18NQueryset + + def newsboxi18n_mcls_processor(mcls, class_name, class_bases, class_attrs, base, newsbox_opts): translatedFields={} for trans_field in newsbox_opts['trans_fieldnames']: diff --git a/newsbox_i18n/views.py b/newsbox_i18n/views.py index 6c1045ac7f8cb2bfbebe0a577a8c654119169137..5a5cb3ae3e111417684621030549551b26cfce8b 100644 --- a/newsbox_i18n/views.py +++ b/newsbox_i18n/views.py @@ -5,6 +5,14 @@ from newsbox.views import NewsboxDetailView from django.utils.translation import get_language +class NewsboxI18NListMixin(object): + + def get_queryset(self): + queryset = super(NewsboxI18NListMixin, self).get_queryset() + queryset = queryset.active_translations() + return queryset + + class NewsboxI18NDetailView(NewsboxDetailView): slug_field = "translations__newsbox_slug"