fix: Include platform plugins in marketplace and fix serializer
Changes: 1. Updated PluginTemplateViewSet.get_queryset() to include PLATFORM visibility plugins in marketplace view alongside approved PUBLIC plugins 2. Fixed PluginTemplateListSerializer read_only_fields from string '__all__' to proper list reference Platform plugins are now visible in the marketplace API: - 6 platform-created plugins seeded via seed_platform_plugins command - Categories: EMAIL, REPORTS, CUSTOMER, BOOKING - All marked as visibility=PLATFORM, is_approved=True 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -632,7 +632,7 @@ class PluginTemplateListSerializer(serializers.ModelSerializer):
|
|||||||
'install_count', 'rating_average', 'rating_count',
|
'install_count', 'rating_average', 'rating_count',
|
||||||
'created_at', 'updated_at', 'published_at',
|
'created_at', 'updated_at', 'published_at',
|
||||||
]
|
]
|
||||||
read_only_fields = '__all__'
|
read_only_fields = fields # All fields are read-only for list view
|
||||||
|
|
||||||
|
|
||||||
class PluginInstallationSerializer(serializers.ModelSerializer):
|
class PluginInstallationSerializer(serializers.ModelSerializer):
|
||||||
|
|||||||
@@ -642,10 +642,11 @@ class PluginTemplateViewSet(viewsets.ModelViewSet):
|
|||||||
view_mode = self.request.query_params.get('view', 'marketplace')
|
view_mode = self.request.query_params.get('view', 'marketplace')
|
||||||
|
|
||||||
if view_mode == 'marketplace':
|
if view_mode == 'marketplace':
|
||||||
# Public marketplace - only approved public templates
|
# Public marketplace - platform official + approved public templates
|
||||||
|
from django.db.models import Q
|
||||||
queryset = queryset.filter(
|
queryset = queryset.filter(
|
||||||
visibility=PluginTemplate.Visibility.PUBLIC,
|
Q(visibility=PluginTemplate.Visibility.PLATFORM) |
|
||||||
is_approved=True
|
Q(visibility=PluginTemplate.Visibility.PUBLIC, is_approved=True)
|
||||||
)
|
)
|
||||||
elif view_mode == 'my_plugins':
|
elif view_mode == 'my_plugins':
|
||||||
# User's own templates
|
# User's own templates
|
||||||
|
|||||||
Reference in New Issue
Block a user