Django-translations не возвращает переводы моделей на DRF

У меня есть проект, настроенный с помощью django 3.2.5 и drf 3.14.0 на python 3.6 и postgres 9.6. Я выполнил следующие шаги, чтобы создать переводимую модель для модели обучающих продуктов. использование этой библиотеки для перевода здесь.

from translations.models import Translatable
class LearningProduct(Translatable):
    title = models.CharField(
        _("Title"),
        max_length=255,
        unique=True
    )
    description = models.TextField(
        _("Description"),
        blank=True,
        null=True
    )
    image = models.ImageField(
        _("Image"),
        upload_to="uploads/images/learning_products/%Y/%m/%d",
        max_length=255,
        blank=True,
        null=True
    )
    link = models.URLField(
        _("Link"),
        blank=True,
        null=True
    )

    class Meta:
        db_table = "learning_product"
        verbose_name = _("Learning Product")
        verbose_name_plural = _("Learning Products")

    class TranslatableMeta:
        fields = ['title', 'description', 'link']
    
    def __str__(self):
        return self.title

добавили его в панель администратора следующим образом:

from translations.admin import TranslatableAdmin, TranslationInline

class LearningProductAdmin(TranslatableAdmin):
    inlines = [TranslationInline]

admin.site.register(LearningProduct, LearningProductAdmin)

это позволяет мне сохранить переводы модели для указанных полей. у меня есть два языка, установленные в настройках как:

## Translation settings.
LANGUAGES = (
    ('en', _('English')),
    ('ne', _('Nepali')),
)

У меня apiview настроен следующим образом, и он позволяет мне получить модель, когда не передается язык принятия, а также когда в качестве языка принятия передается En, но я сталкиваюсь с ошибкой, приведенной ниже, когда я пытаюсь получить метод с языком принятия Ne. views.py

# views.py
from rest_framework import generics
from core.models import LearningProduct

class LearningProductSerializer(serializers.ModelSerializer):
    """
    Class to serialize Learning Product data types.
    """

    class Meta:
        model = LearningProduct
        fields = '__all__'

class LearningProductListView(generics.ListAPIView):
    queryset = LearningProduct.objects.all()
    serializer_class = LearningProductSerializer

    def get_queryset(self):
        queryset = super(LearningProductListView, self).get_queryset()
        return queryset.translate_related(
            'title',
            'description',
            'link',
        ).translate()

ошибка:

TypeError: abc is neither a model instance nor an iterable of model instances.

Вернуться на верх