(生鲜项目)19. ViewSet实现商品详情页接口

Posted jiangzongyou

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(生鲜项目)19. ViewSet实现商品详情页接口相关的知识,希望对你有一定的参考价值。

第一步: 前期分析

1.商品详情页包括轮播图,详情,富文本

2.对于轮播图这种有多个值的外键, 应该再另外设计一个serializer表

3.写代码, 代码很简单

goods.views.py
# RetrieveModelMixin的功能是帮我们完成url的配置, /goods/id, 通过输入id就可以拿到某个商品的详情
class GoodsListViewSet(mixins.ListModelMixin, mixins.RetrieveModelMixin, viewsets.GenericViewSet):
goods.serializers.py

class GoodsImageSerializer(serializers.ModelSerializer):
    class Meta:
        model = GoodsImage
        fields = ("image",)

class GoodsSerializer(serializers.ModelSerializer):
    category = CategorySerializer()  
    images = GoodsImageSerializer(many=True)  # imags字段名不是随便设置的, 见下图
    class Meta:
        model = Goods
        fields = "__all__" 

4. models.Model中字段的的related_name属性有什么用?

技术图片

 

 

技术图片

 

 

 

 

 

 

 

 

 

 

 

 

---  君子处其实,不处其华;治其内,不治其外   张居正  ----

以上是关于(生鲜项目)19. ViewSet实现商品详情页接口的主要内容,如果未能解决你的问题,请参考以下文章

GO语言开发天天生鲜项目第五天 购物车模块和订单模块

基于springboot电商生鲜购物商城平台设计与实现(含源码+数据库文件)

(生鲜项目)07. api view实现商品列表页

(生鲜项目)08. ModelSerializer 实现商品列表页, 使用Mixin来实现返回, 以及更加方便的ListAPIView, 以及分页的设置

Django基于PythonWeb的Django框架设计实现天天生鲜系统-1

(生鲜项目_支付板块)21. 购物车+