import os import requests from bs4 import BeautifulSoup from django.shortcuts import render # Create your views here. from django.http import HttpResponse from rest_framework import status from rest_framework.response import Response from rest_framework.views import APIView from app.models import GameItem, GameItemType, User, gameHistory from app.pa import file_name, main from app.serializer import GameItemSerializer, gameItemTypeSerializer, GameHistorySerializer, \ UserSerializer import logging from rest_framework import permissions from gameHall.MyPageNumberPagination import MyPageNumberPagination def index(request): # dirname = file_name("F:\http\H5game\games") # for iterating_var in dirname: # main(iterating_var) # print(dirname) return HttpResponse("Hello, world ! This is a django site.") # 使用APIView class getDataForList(APIView): def get(self, request): # gameItem = GameItem.objects.all() # print("走到这里了么") # serializer = GameItemSerializer(gameItem, many=True) # return Response(serializer.data) # gameItem = GameItem.objects.all() print("我现在要获取什么类型的", request.query_params["type"]) gameItemType = GameItemType.objects.get(type=request.query_params["type"]) print("结果集合", gameItemType.gameitem_set.all()) gameItem = gameItemType.gameitem_set.all() # gameItem = GameItem.objects.get(id=30) page = MyPageNumberPagination() page_roles = page.paginate_queryset(queryset=gameItem, request=request, view=self) serializer = GameItemSerializer(page_roles, many=True) # print("走到这里了么post", serializer) # return Response(gameItemType) # 只返回数据 return page.get_paginated_response(serializer.data) # 返回前后夜url def post(self, request): # serializer = GameItemSerializer(data=request.data) # if serializer.is_valid(): # serializer.save() # return Response(serializer.data, status=status.HTTP_201_CREATED) # else: # return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) gameItem = GameItem.objects.all() page = MyPageNumberPagination() page_roles = page.paginate_queryset(queryset=gameItem, request=request, view=self) serializer = GameItemSerializer(page_roles, many=True) # return Response(roles_ser.data) # 只返回数据 print("走到这里了么post", request.data) return page.get_paginated_response(serializer.data) # 返回前后夜url # return Response(serializer.data) class getGameItemType(APIView): def get(self, request): # gameItem = GameItem.objects.all() # print("走到这里了么") # serializer = GameItemSerializer(gameItem, many=True) # return Response(serializer.data) # gameItem = GameItem.objects.all() gameItemTypes = GameItemType.objects.all() # 分页 # page = MyPageNumberPagination() # page_roles = page.paginate_queryset(queryset=gameItem, request=request, view=self) # serializer = GameItemSerializer(gameItemTypes, many=True) # return page.get_paginated_response(serializer.data) # 返回前后夜url # 正常数组 serializer = gameItemTypeSerializer(gameItemTypes, many=True) return Response(serializer.data) # 只返回数据 def post(self, request): # serializer = GameItemSerializer(data=request.data) # if serializer.is_valid(): # serializer.save() # return Response(serializer.data, status=status.HTTP_201_CREATED) # else: # return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) gameItem = GameItem.objects.all() page = MyPageNumberPagination() page_roles = page.paginate_queryset(queryset=gameItem, request=request, view=self) serializer = GameItemSerializer(page_roles, many=True) # return Response(roles_ser.data) # 只返回数据 print("走到这里了么post", request.data) return page.get_paginated_response(serializer.data) # 返回前后夜url # return Response(serializer.data) # 添加历史记录 class createHistory(APIView): def get(self, request): gameId = request.query_params["id"] userId = request.query_params["userId"] game = GameItem.objects.get(id=gameId) history = gameHistory.objects.create( userId=userId, gameId=game, ) # print("我现在要获取什么类型的", request.query_params["id"]) return Response("添加成功") # 获取历史记录 class getHistory(APIView): def get(self, request): userId = request.query_params["userId"] history = gameHistory.objects.all().filter(userId=userId) serializer = GameHistorySerializer(history, many=True) # print("获取", history) return Response(serializer.data) # 创建用户 class createUser(APIView): def get(self, request): # gameItem = GameItem.objects.all() # print("走到这里了么") # serializer = GameItemSerializer(gameItem, many=True) # return Response(serializer.data) # gameItem = GameItem.objects.all() # user = User.objects.create( # userId="admin1", # userName="admin1", # userPhone=154645, # userPassWord="admin1", # userWXId="admin1" # ) # 名字 # userName = models.CharField('名字', max_length=255) # # 账号 # userId = models.CharField('账号', max_length=255) # # 手机号 # userPhone = models.IntegerField('手机号', max_length=11) # # 密码 # userPassWord = models.CharField('密码', max_length=255) # # 微信账号 # userWXId = models.CharField('微信账号', max_length=255) # print("我现在要获取什么类型的", request.query_params["type"]) # 分页 # page = MyPageNumberPagination() # page_roles = page.paginate_queryset(queryset=gameItem, request=request, view=self) # serializer = GameItemSerializer(gameItemTypes, many=True) # return page.get_paginated_response(serializer.data) # 返回前后夜url # 正常数组 # serializer = gameItemTypeSerializer(gameItemTypes, many=True) return Response("") # 只返回数据 # 获取用户 class getUser(APIView): def get(self, request): userId = request.query_params["userId"] user = User.objects.get(userId=userId) serializer = UserSerializer(user) # print("获取", serializer) return Response(serializer.data)