使用类定义增删改查接口

This commit is contained in:
2025-11-15 00:05:27 +08:00
parent 5ba11b59db
commit e3cf21d159
7 changed files with 159 additions and 10 deletions

View File

@@ -1,8 +1,12 @@
from django.db.models.expressions import result
from django.shortcuts import render
from django.http import HttpResponse
from django.http import HttpResponse,JsonResponse
from myapp.models import User
# Create your views here.
from django.http import QueryDict
from django.views.generic import View # 用类来写增删改查接口
# 非类写法
"""
def user(request):
if request.method == 'GET':
return HttpResponse('获取用户')
@@ -15,15 +19,71 @@ def user(request):
name=name,
city=city,
sex = sex,
age = age,
age = age
)
print(request.POST)
return HttpResponse('创建用户')
elif request.method == 'PUT':
return HttpResponse('创建用户')
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':
return HttpResponse('删除用户')
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()
@@ -32,3 +92,8 @@ def user_list(request):
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})