zoukankan      html  css  js  c++  java
  • 广告小程序后端开发(11.个人中心:获取用户数据,用户发布的广告和店铺及图片)

    1.个人中心:获取用户身份数据

    1.apps/users/adminx.py中对UserProfile的序列化类进行修改为:

    class UserProfileModelSerializer(serializers.ModelSerializer):
        class Meta:
            model = UserProfile
            fields=['nickName','avatarUrl','jifen','yongjin','fensi_num']

    2.apps/users/views.py中新建获取用户信息类GetUserInfo:

    class GetUserInfo(APIView):
        """获取用户信息"""
        renderer_classes = [JSONRenderer]  # 渲染器
    
        def get(self,request):
            token=request.GET.get('token')
            user=UserProfile.objects.filter(token=token).first()
            re=UserProfileModelSerializer(user)
            return Response(re.data)

    3.在apps/users/urls.py中添加路由:

    from django.urls import path
    from .views import LoginView,GetUserInfo
    
    urlpatterns = [
        path('login/',LoginView.as_view()),
        path('getuserinfo/',GetUserInfo.as_view())
    ]

     2.个人中心:获取用户发布的广告和店铺及图片

    1.在apps/ad/views.py中新建获取用户发布的广告和店铺及图片的类GetUserGoods:

    class GetUserGoods(APIView):
        """获取用户发布的广告或店铺,以及每个广告或店铺的第一张图片"""
        renderer_classes = [JSONRenderer]  # 渲染器
    
        def get(self, request):
            token = request.GET.get('token')
            user = UserProfile.objects.filter(token=token).first()
            if user:
                re_list=Good.objects.filter(user=user).order_by('-add_time')
                re = GoodModelSerializer(re_list, many=True)
                image_list = []
                img = {}
                for item1 in re_list:
                    first_img = Images.objects.filter(good=item1).first()
                    if first_img:
                        img['id'] = item1.id
                        img['image'] = HOST + str(first_img.image)
                        image_list.append(img)
                        img = {}  # 没有这一句,最后图片列表中所有元素都会是最后一次对img的赋值内容
                return Response(data=({'good': re.data, 'image_list': image_list}))
            else:
                return HttpResponse('无此用户')

    2.在apps/ad/urls.py中配置路由:

    from django.urls import path
    from .views import GetCategory,CreateAdOrShop,UpLoadImg,GetPubGoods,GetGoodDesc,GetUserGoods
    
    urlpatterns = [
        path('getcategory/',GetCategory.as_view()),
        path('createadorshop/',CreateAdOrShop.as_view()),
        path('uploadimg/',UpLoadImg.as_view()),
        path('getpubgoods/',GetPubGoods.as_view()),
        path('getgooddesc/',GetGoodDesc.as_view()),
        path('getusergoods/',GetUserGoods.as_view()),
    ]
  • 相关阅读:
    20200416_Centos 7.2 在安装系统之前把数据备份出来
    20200322_【转载】关于C#中使用SQLite自适应Any CPU程序的说明
    20200315_python3.6去除标点符号
    性能测试,负载测试,压力测试有什么区别
    app安全测试(转载)
    postman的使用
    安全测试
    MySQL SELECT陈述式范例
    软件测试环境
    性能测试报告
  • 原文地址:https://www.cnblogs.com/xuepangzi/p/10951339.html
Copyright © 2011-2022 走看看