刚接触python编程,Django SQL,尝试创建一个DB,用Postman和SQLLiteStudio验证! 使用 Django 创建 DB 和 python (3.9.6)。当我运行 DELETE 方法时,在 postman 中返回错误 500 而不执行 DELETE。 {在我的 cmd 中我没有看到任何错误消息}
from django.shortcuts import render
from django.views.decorators.csrf import csrf_exempt
from rest_framework.parsers import JSONParser
from django.http.response import JsonResponse
from EmployeeApp.models import Departments,Employees
from EmployeeApp.serializers import DepartmentSerializer,EmployeeSerializer
# Create your views here.
@csrf_exempt
def departmentApi(request,id=0):
if request.method=='GET':
departments = Departments.objects.all()
departments_serializer = DepartmentSerializer(departments, many=True)
return JsonResponse(departments_serializer.data, safe=False)
elif request.method=='POST':
department_data=JSONParser().parse(request)
department_serializer = DepartmentSerializer(data=department_data)
if department_serializer.is_valid():
department_serializer.save()
return JsonResponse("Added Successfully!!" , safe=False)
return JsonResponse("Failed to Add.",safe=False)
elif request.method=='PUT':
department_data = JSONParser().parse(request)
department=Departments.objects.get(DepartmentId=department_data['DepartmentId'])
department_serializer=DepartmentSerializer(department,data=department_data)
if department_serializer.is_valid():
department_serializer.save()
return JsonResponse("Updated Successfully!!", safe=False)
return JsonResponse("Failed to Update.", safe=False)
elif request.method=='DELETE':
department=Departments.objects.get(DepartmentId=id)
department.delete()
return JsonResponse("Deleted Succeffully!!", safe=False)
from Django.DB import models
class Departments(models.Model):
DepartmentId = models.AutoField(primary_key=True)
DepartmentName = models.CharField(max_length=100)
class Employees(models.Model):
EmployeeId = models.AutoField(primary_key=True)
EmployeeName = models.CharField(max_length=100)
Department = models.CharField(max_length=100)
DateOfJoining = models.DateField()
PhotoFileName = models.CharField(max_length=100)
from rest_framework import serializers
from EmployeeApp.models import Departments, Employees
class DepartmentSerializer(serializers.ModelSerializer):
class Meta:
model=Departments
fields=('DepartmentId','DepartmentName')
class EmployeeSerializer(serializers.ModelSerializer):
class Meta:
model=Employees
fields=('EmployeeId',
'EmployeeName',
'Department',
'DateOfJoining',
'PhotofileName') ```