小王寫的程序又雙出bug了!
事情的經過是這樣的:小王調用Django orm進行數據保存時,居然成功將空值寫入了一個必填欄位,於是錯誤捕捉失敗,導致資料庫中出現了不符合預期要求的數據。
models文件如下
# models.py
from django.db import models
class Students(models.Model):
no = models.CharField(學號, max_length=5)
name = models.CharField(姓名, max_length=30)
email = models.EmailField(郵箱)
視圖文件如下
# views.py
from django.views import View
from django.http import JsonResponse
from .models import StudentsModel
class StudentView(View):
def post(self, request):
no = request.POST.get(no)
name = request.POST.get(name)
email = request.POST.get(email)
try:
StudentsModel.objects.create(
no=no,
name=name,
email=email
)
data = {msg: create data success}
return JsonResponse(data=data, status=200)
except Exception as e:
data = {msg: str(e)}
return JsonResponse(data=data, status=500)
模擬發送請求,此時no值為空,發現居然保存成功了!?並沒有任何報錯提示