fix(devops): Move software field filter for feature flag to the serializer

ref: #673 #663
This commit is contained in:
2025-03-08 19:30:45 +09:30
parent 7dac29971f
commit 3eb02602d6
3 changed files with 39 additions and 3 deletions

View File

@ -10,6 +10,7 @@ from devops.models.feature_flag import FeatureFlag
from itam.serializers.software import Software, SoftwareBaseSerializer
class OrganizationField(common.OrganizationField):
def get_queryset(self):
@ -23,6 +24,19 @@ class OrganizationField(common.OrganizationField):
return qs
class SoftwareField(serializers.PrimaryKeyRelatedField):
def get_queryset(self):
qs = Software.objects.filter(
feature_flagging__enabled = True
).distinct()
return qs
class BaseSerializer(serializers.ModelSerializer):
display_name = serializers.SerializerMethodField('get_display_name')
@ -60,6 +74,8 @@ class ModelSerializer(
organization = OrganizationField(required = True)
software = SoftwareField(required = True, write_only = True)
_urls = serializers.SerializerMethodField('get_url')