• 序列化 正向查询 和反向查询


    #课程标签
    class CourseTag(Base):
        title = models.CharField('课程标签', max_length=32)
        sequence = models.IntegerField('展示顺序', default=10)
    
        class Meta:
            db_table = 'tb_coursetag'
    
        def __str__(self):
            return self.title
    
    
    class Course(Base):
        STATUS = (
            ('0', '即将上线'),
            ('1', '已上线'),
            ('2', '已下线'),
        )
        title = models.CharField('课程名', max_length=24)
        desc = models.CharField('课程名', max_length=256)
        img = models.ImageField('课程logo', upload_to='course', null=True)
        course_type = models.ForeignKey(CourseType, verbose_name='课程类别', on_delete=models.CASCADE, default=None, null=True)
        course_tag = models.ManyToManyField(CourseTag, verbose_name='课程标签')
        status = models.CharField('课程状态', choices=STATUS, max_length=8, default='1')
        attention = models.IntegerField('关注人数', default=0)
        learner = models.IntegerField('学习人数', default=0)
    
        class Meta:
            db_table = 'tb_course'
    
        def __str__(self):
            return self.title
    

      

    正向查询

    class CourseCourseSerializers(serializers.ModelSerializer):
        corse_type = serializers.CharField(source='course_type.title')
        class Meta:
            model=Course
            fields='__all__'
    

     反向查询

    class CourseTypeSerializers(serializers.ModelSerializer):
        course_set= CourseCourseSerializers(many=True) # 表明+set
        class Meta:
            model=CourseType
            fields='__all__'
    

      

  • 相关阅读:
    小程序开发 access_token 统一管理
    python操作mysql
    Mac版本的idea非正常关闭后,idea打开项目大面积报红
    PySpider爬取去哪儿攻略数据项目
    Python3.9安装PySpider步骤及问题解决
    Selenium 自动化测试工具
    Python 抓取猫眼电影排行
    Python爬虫基本库
    Python 创建一个Django项目
    Python 数据可视化
  • 原文地址:https://www.cnblogs.com/zhangshijiezsj/p/13806628.html
Copyright © 2020-2023  润新知