zoukankan      html  css  js  c++  java
  • django rest_framework serializer的ManyRelatedField 和 SlugRelatedField使用

    class BlogListSerializer(serializers.Serializer):
        id = serializers.IntegerField()
        user = BlogUserInfoSerializer()
        title = serializers.CharField()
        like_user = serializers.ManyRelatedField(serializers.SlugRelatedField(slug_field="username", source="user_id"), 
                                                 queryset=User.objects.all(), source="follow")
        topic_name = serializers.SlugRelatedField(slug_field="name", source="topic", queryset=Topic.objects.all())
        create_at = serializers.DateTimeField()
    
    
    
    class Blog(models.Model):
        follow = models.ManyToManyField(User, verbose_name="关注", related_name="follow_blog")
        user = models.ForeignKey(User, on_delete=models.CASCADE, related_name="blog")
        title = models.CharField(max_length=100)
        content = models.TextField(max_length=200000)
        topic = models.ForeignKey(Topic, null=True, verbose_name="话题", on_delete=models.CASCADE)
        create_at = models.DateTimeField(verbose_name="创建时间", auto_now_add=True)


    class Topic(models.Model):
    name = models.CharField(verbose_name="名称", max_length=100)
    create_at = models.DateTimeField(verbose_name="创建时间", auto_now_add=True)


      

    返回结果如下

    {
                "id": 158,
                "user": {
                    "id": 50,
                    "avatar": "https://xxx.xxx.cn/media/191b6193972a439e9886187f249bd2d9.jpg",
                    "username": "语家",
                    "sex": 2
                },
                "title": "想开个童装店?",
                "like_user": [
                    "13800138000"
                ],
                "topic_name": "#你们攒钱为了什么#",
                "create_at": "2018-10-15 16:21:36"
    }
    

      

  • 相关阅读:
    GenericServlet vs HttpServlet
    il c井
    额。。万恶之源就是c
    js算数优先级
    connect-flash 中间件
    触发bfd 的条件
    module 和 module.exports 的区别
    a标签填充父容器
    bootstrap
    每日一练排版
  • 原文地址:https://www.cnblogs.com/shenwenlong/p/10837613.html
Copyright © 2011-2022 走看看