-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcms.py
More file actions
28 lines (21 loc) · 1.21 KB
/
cms.py
File metadata and controls
28 lines (21 loc) · 1.21 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
from cms.models import Page, Section, Sitemap
from core.const.serializer import COMMON_ADMIN_FIELDS
from core.serializer.base_abstract_serializer import BaseAbstractSerializer
from core.serializer.json_schema_serializer import JsonSchemaSerializer
from rest_framework import serializers
class SitemapAdminSerializer(BaseAbstractSerializer, JsonSchemaSerializer, serializers.ModelSerializer):
class Meta:
model = Sitemap
fields = COMMON_ADMIN_FIELDS + ("parent_sitemap", "route_code", "order", "page", "name_ko", "name_en")
translation_fields = ("name",)
class PageAdminSerializer(BaseAbstractSerializer, JsonSchemaSerializer, serializers.ModelSerializer):
class Meta:
model = Page
fields = COMMON_ADMIN_FIELDS + ("title_ko", "title_en", "subtitle_ko", "subtitle_en")
translation_fields = ("title", "subtitle")
class SectionAdminSerializer(BaseAbstractSerializer, JsonSchemaSerializer, serializers.ModelSerializer):
page = serializers.PrimaryKeyRelatedField(queryset=Page.objects.filter_active(), required=False)
class Meta:
model = Section
fields = COMMON_ADMIN_FIELDS + ("page", "order", "body_ko", "body_en")
translation_fields = ("body",)