from django.db.models.expressions import result from django.shortcuts import render from django.http import HttpResponse,JsonResponse from myapp.models import User from django.http import QueryDict from django.views.generic import View # 用类来写增删改查接口 # 非类写法 """ def user(request): if request.method == 'GET': return HttpResponse('获取用户') elif request.method == 'POST': name = request.POST.get('name') city = request.POST.get('city') sex = request.POST.get('sex') age = request.POST.get('age') User.objects.create( name=name, city=city, sex = sex, age = age ) print(request.POST) return HttpResponse('创建用户') elif request.method == 'PUT': data = QueryDict(request.body) id = data.get('id') # 用户更新 user_obj = User.objects.get(id=id) user_obj.name = data.get('name') user_obj.city = data.get('city') user_obj.sex = data.get('sex') user_obj.age = data.get('age') user_obj.save() result = {'code': 200, 'msg': '更新用户成功'} return JsonResponse(result) elif request.method == 'DELETE': data = QueryDict(request.body) id = data.get("id") User.objects.get(id=id).delete() result = {'code': 200, 'msg': '删除用户成功'} return JsonResponse(result) """ # 类写法 class UserView(View): def get(self, request): return HttpResponse('获取用户') def post(self, request): name = request.POST.get('name') city = request.POST.get('city') sex = request.POST.get('sex') age = request.POST.get('age') User.objects.create( name=name, city=city, sex = sex, age = age ) print(request.POST) return HttpResponse('创建用户') def put(self, request): data = QueryDict(request.body) id = data.get('id') # 用户更新 user_obj = User.objects.get(id=id) user_obj.name = data.get('name') user_obj.city = data.get('city') user_obj.sex = data.get('sex') user_obj.age = data.get('age') user_obj.save() result = {'code': 200, 'msg': '更新用户成功'} return JsonResponse(result) def delete(self, request): data = QueryDict(request.body) id = data.get("id") User.objects.get(id=id).delete() result = {'code': 200, 'msg': '删除用户成功'} return JsonResponse(result) def user_list(request): users = User.objects.all() return render(request, 'user_list.html', {'users': users}) def user_add(request): return render(request, 'user_add.html') def user_edit(request): id = request.GET.get('id') user_obj = User.objects.get(id=id) return render(request, 'user_edit.html', {'user': user_obj})