feat: 移除轮播图管理,系列活动改卡片布局,课程描述限10行,首页配置优化
All checks were successful
Deploy to Server / deploy (push) Successful in 2m4s
All checks were successful
Deploy to Server / deploy (push) Successful in 2m4s
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
from rest_framework import serializers
|
||||
from django.conf import settings
|
||||
from .models import Competition, CompetitionEnrollment, ScoreDimension, Project, ProjectFile, Score, Comment, HomePageConfig, CarouselItem
|
||||
from .models import Competition, CompetitionEnrollment, ScoreDimension, Project, ProjectFile, Score, Comment, HomePageConfig
|
||||
from shop.serializers import WeChatUserSerializer
|
||||
|
||||
|
||||
@@ -11,41 +11,16 @@ def _media_url(file_field):
|
||||
return None
|
||||
|
||||
|
||||
class CarouselItemSerializer(serializers.ModelSerializer):
|
||||
display_image = serializers.SerializerMethodField()
|
||||
|
||||
class Meta:
|
||||
model = CarouselItem
|
||||
fields = ['id', 'carousel_type', 'image', 'image_url', 'display_image',
|
||||
'title', 'subtitle', 'status', 'status_color', 'date', 'location',
|
||||
'order', 'is_active']
|
||||
|
||||
def get_display_image(self, obj):
|
||||
return _media_url(obj.image) or obj.image_url
|
||||
|
||||
|
||||
class HomePageConfigSerializer(serializers.ModelSerializer):
|
||||
display_banner = serializers.SerializerMethodField()
|
||||
carousel1_items = serializers.SerializerMethodField()
|
||||
carousel2_items = serializers.SerializerMethodField()
|
||||
|
||||
class Meta:
|
||||
model = HomePageConfig
|
||||
fields = ['id', 'banner_image', 'banner_image_url', 'display_banner',
|
||||
'main_title', 'carousel1_title', 'carousel2_title',
|
||||
'organizer', 'undertaker', 'carousel1_items', 'carousel2_items']
|
||||
|
||||
'main_title', 'organizer', 'undertaker']
|
||||
def get_display_banner(self, obj):
|
||||
return _media_url(obj.banner_image) or obj.banner_image_url
|
||||
|
||||
def get_carousel1_items(self, obj):
|
||||
items = CarouselItem.objects.filter(carousel_type='carousel1', is_active=True)
|
||||
return CarouselItemSerializer(items, many=True, context=self.context).data
|
||||
|
||||
def get_carousel2_items(self, obj):
|
||||
items = CarouselItem.objects.filter(carousel_type='carousel2', is_active=True)
|
||||
return CarouselItemSerializer(items, many=True, context=self.context).data
|
||||
|
||||
|
||||
class ScoreDimensionSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
|
||||
Reference in New Issue
Block a user