diff --git a/app/admin_api/serializers/cms.py b/app/admin_api/serializers/cms.py index 8c112f5..a3cb853 100644 --- a/app/admin_api/serializers/cms.py +++ b/app/admin_api/serializers/cms.py @@ -15,7 +15,14 @@ class Meta: class PageAdminSerializer(BaseAbstractSerializer, JsonSchemaSerializer, serializers.ModelSerializer): class Meta: model = Page - fields = COMMON_ADMIN_FIELDS + ("title_ko", "title_en", "subtitle_ko", "subtitle_en") + fields = COMMON_ADMIN_FIELDS + ( + "title_ko", + "title_en", + "subtitle_ko", + "subtitle_en", + "show_top_title_banner", + "show_bottom_sponsor_banner", + ) translation_fields = ("title", "subtitle") diff --git a/app/cms/migrations/0007_historicalpage_show_bottom_sponsor_banner_and_more.py b/app/cms/migrations/0007_historicalpage_show_bottom_sponsor_banner_and_more.py new file mode 100644 index 0000000..46ba82c --- /dev/null +++ b/app/cms/migrations/0007_historicalpage_show_bottom_sponsor_banner_and_more.py @@ -0,0 +1,29 @@ +# Generated by Django 5.2 on 2025-06-03 03:06 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + dependencies = [("cms", "0006_alter_sitemap_parent_sitemap")] + operations = [ + migrations.AddField( + model_name="historicalpage", + name="show_bottom_sponsor_banner", + field=models.BooleanField(default=False, help_text="페이지 하단에 스폰서 배너를 표시할지 여부"), + ), + migrations.AddField( + model_name="historicalpage", + name="show_top_title_banner", + field=models.BooleanField(default=False, help_text="페이지 상단에 타이틀 배너를 표시할지 여부"), + ), + migrations.AddField( + model_name="page", + name="show_bottom_sponsor_banner", + field=models.BooleanField(default=False, help_text="페이지 하단에 스폰서 배너를 표시할지 여부"), + ), + migrations.AddField( + model_name="page", + name="show_top_title_banner", + field=models.BooleanField(default=False, help_text="페이지 상단에 타이틀 배너를 표시할지 여부"), + ), + ] diff --git a/app/cms/models.py b/app/cms/models.py index 4886d5b..2addac1 100644 --- a/app/cms/models.py +++ b/app/cms/models.py @@ -17,6 +17,11 @@ class Page(BaseAbstractModel): title = models.CharField(max_length=256) subtitle = models.CharField(max_length=512) + show_top_title_banner = models.BooleanField(default=False, help_text="페이지 상단에 타이틀 배너를 표시할지 여부") + show_bottom_sponsor_banner = models.BooleanField( + default=False, help_text="페이지 하단에 스폰서 배너를 표시할지 여부" + ) + def __str__(self): return str(self.title) diff --git a/app/cms/serializers.py b/app/cms/serializers.py index 9beff46..1e35abb 100644 --- a/app/cms/serializers.py +++ b/app/cms/serializers.py @@ -20,4 +20,11 @@ class PageSerializer(serializers.ModelSerializer): class Meta: model = Page - fields = COMMON_FIELDS + ("title", "subtitle", "css", "sections") + fields = COMMON_FIELDS + ( + "title", + "subtitle", + "css", + "sections", + "show_top_title_banner", + "show_bottom_sponsor_banner", + )