Add API methods for site-feature

This commit is contained in:
Виктор Гладких 2019-12-03 10:20:13 +03:00
parent ed28ea1767
commit fdc63f2677
3 changed files with 35 additions and 38 deletions

View File

@ -21,27 +21,6 @@ class FeatureSerializer(serializers.ModelSerializer):
)
class SiteFeatureSerializer(serializers.ModelSerializer):
id = serializers.IntegerField(source='feature.id')
slug = serializers.CharField(source='feature.slug')
priority = serializers.IntegerField(source='feature.priority')
route = serializers.CharField(source='feature.route.name')
source = serializers.IntegerField(source='feature.source')
nested = RecursiveFieldSerializer(many=True, allow_null=True)
class Meta:
"""Meta class."""
model = models.SiteFeature
fields = ('main',
'id',
'slug',
'priority',
'route',
'source',
'nested',
)
class CurrencySerializer(ProjectModelSerializer):
"""Currency serializer."""
@ -56,6 +35,23 @@ class CurrencySerializer(ProjectModelSerializer):
]
class SiteFeatureSerializer(serializers.ModelSerializer):
"""Site feature serializer."""
class Meta:
"""Meta class."""
model = models.SiteFeature
fields = (
'id',
'site_settings',
'feature',
'published',
'main',
'nested'
)
class SiteSettingsSerializer(serializers.ModelSerializer):
"""Site settings serializer."""
@ -140,7 +136,7 @@ class SiteBackOfficeSerializer(SiteSerializer):
class FeatureSerializer(serializers.ModelSerializer):
"""Site feature serializer."""
"""Feature serializer."""
class Meta:
"""Meta class."""
@ -155,21 +151,6 @@ class FeatureSerializer(serializers.ModelSerializer):
)
# class SiteFeatureSerializer(serializers.ModelSerializer):
# """Site feature serializer."""
#
# class Meta:
# """Meta class."""
#
# model = models.SiteFeature
# fields = (
# 'id',
# 'published',
# 'site_settings',
# 'feature',
# )
class AwardBaseSerializer(serializers.ModelSerializer):
"""Award base serializer."""

View File

@ -13,5 +13,11 @@ urlpatterns = [
path('site-settings/<subdomain>/', views.SiteSettingsBackOfficeView.as_view(),
name='site-settings'),
path('feature/', views.FeatureBackView.as_view(), name='feature-list-create'),
path('feature/<int:id>/', views.FeatureRUDBackView.as_view(), name='feature-rud')
path('feature/<int:id>/', views.FeatureRUDBackView.as_view(), name='feature-rud'),
path('site-feature/', views.SiteFeatureBackView.as_view(),
name='site-feature-list-create'),
path('site-feature/<int:id>/', views.SiteFeatureRUDBackView.as_view(),
name='site-feature-rud'),
]

View File

@ -44,11 +44,21 @@ class FeatureBackView(generics.ListCreateAPIView):
serializer_class = serializers.FeatureSerializer
class SiteFeatureBackView(generics.ListCreateAPIView):
"""Feature list or create View."""
serializer_class = serializers.SiteFeatureSerializer
class FeatureRUDBackView(generics.RetrieveUpdateDestroyAPIView):
"""Feature RUD View."""
serializer_class = serializers.FeatureSerializer
class SiteFeatureRUDBackView(generics.RetrieveUpdateDestroyAPIView):
"""Feature RUD View."""
serializer_class = serializers.SiteFeatureSerializer
class SiteSettingsBackOfficeView(SiteSettingsView):
"""Site settings View."""
serializer_class = serializers.SiteSettingsBackOfficeSerializer