remaining stage 1

This commit is contained in:
alorig
2025-11-19 20:53:29 +05:00
parent b5cc262f04
commit 4ca85ae0e5
4 changed files with 86 additions and 32 deletions

View File

@@ -1,6 +1,7 @@
from rest_framework import serializers
from django.db import models
from django.core.exceptions import ObjectDoesNotExist
from django.conf import settings
from .models import Tasks, Images, Content
from igny8_core.business.planning.models import Clusters, ContentIdeas
from igny8_core.business.content.models import (
@@ -22,9 +23,6 @@ class TasksSerializer(serializers.ModelSerializer):
content_secondary_keywords = serializers.SerializerMethodField()
content_tags = serializers.SerializerMethodField()
content_categories = serializers.SerializerMethodField()
cluster_mappings = serializers.SerializerMethodField()
taxonomy_mappings = serializers.SerializerMethodField()
attribute_mappings = serializers.SerializerMethodField()
class Meta:
model = Tasks
@@ -50,9 +48,6 @@ class TasksSerializer(serializers.ModelSerializer):
'content_secondary_keywords',
'content_tags',
'content_categories',
'cluster_mappings',
'taxonomy_mappings',
'attribute_mappings',
'assigned_post_id',
'post_url',
'created_at',
@@ -63,6 +58,14 @@ class TasksSerializer(serializers.ModelSerializer):
]
read_only_fields = ['id', 'created_at', 'updated_at', 'account_id']
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
# Only include Stage 1 fields when feature flag is enabled
if getattr(settings, 'USE_SITE_BUILDER_REFACTOR', False):
self.fields['cluster_mappings'] = serializers.SerializerMethodField()
self.fields['taxonomy_mappings'] = serializers.SerializerMethodField()
self.fields['attribute_mappings'] = serializers.SerializerMethodField()
def get_cluster_name(self, obj):
"""Get cluster name from Clusters model"""
if obj.cluster_id:
@@ -246,9 +249,6 @@ class ContentSerializer(serializers.ModelSerializer):
sector_name = serializers.SerializerMethodField()
has_image_prompts = serializers.SerializerMethodField()
has_generated_images = serializers.SerializerMethodField()
cluster_mappings = serializers.SerializerMethodField()
taxonomy_mappings = serializers.SerializerMethodField()
attribute_mappings = serializers.SerializerMethodField()
class Meta:
model = Content
@@ -277,12 +277,17 @@ class ContentSerializer(serializers.ModelSerializer):
'entity_type',
'json_blocks',
'structure_data',
'cluster_mappings',
'taxonomy_mappings',
'attribute_mappings',
]
read_only_fields = ['id', 'generated_at', 'updated_at', 'account_id']
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
# Only include Stage 1 fields when feature flag is enabled
if getattr(settings, 'USE_SITE_BUILDER_REFACTOR', False):
self.fields['cluster_mappings'] = serializers.SerializerMethodField()
self.fields['taxonomy_mappings'] = serializers.SerializerMethodField()
self.fields['attribute_mappings'] = serializers.SerializerMethodField()
def get_task_title(self, obj):
"""Get task title"""
if obj.task_id: