📦jst-django-core

django-modeltranslation + drf serialzierni qulay ishlatish uchun

from django_core.serializers import AbstractTranslatedSerializer


class PostSerializer(AbstractTranslatedSerializer):
    class Meta:
        model = Post
        translated = 0 # 0 | 1 | 2 to'liq malumot pastda tushuntirilgan
        translated_fields = ["title", "desc"]
        fields = ["id", "title", "desc", "image"]
// translated o'zgaruvchisi haqida malumot serializer Meta class ichida yaratiladi

// 0 - Accep-Language ga qarab avtomatik tarjimani olib beradi
{
    "id": 1,
    "image": "https://example.com/image.jpg",
    "title": "name uz|en|ru", // auto 
    "desc": "desc uz|en|ru" // auto
}

// 1 - Barcha tildagi tarjimalarni qaytaradi: object
{
    "id": 1,
    "image": "https://example.com/image.jpg",
    "title": {
        "uz": "title uz",
        "en": "title en",
        "ru": "title ru",
    },
    "desc": {
        "uz": "desc uz",
        "en": "desc en",
        "ru": "desc ru",
    }
}
// 3 - Barcha tildagi tarjimalarni alohida fieldda qaytaradi
{
    "id": 1,
    "image": "https://example.com/image.jpg",
    "title_uz": "name uz",
    "name_en": "name en",
    "name_ru": "name ru",
    "desc_uz": "desc uz",
    "desc_en": "desc en",
    "desc_ru": "desc ru",
}

CustomPagination

BaseViewSetMixin responslarni standartlashtirish uchun

Last updated