Django異常處理的推薦方式Http404


一般我們在定義視圖的時候,會做各種數據校驗,並進行捕獲后以JsonResponse進行返回,在django中有一種推薦的方式是直接拋出異常,該異常django會自動進行處理

一、引用方式

from django.http import Http404

二、使用方法

示例:

from django.http import JsonResponse, Http404
from django.views import View
from django.db import connection
from .models import Projects
from .serializers import ProjectsModelSerializer


class ProjectsPage(View):
    '''
    類視圖
    '''

    def get_object(self, pk):
        try:
            obj = Projects.objects.get(id__exact=pk)
        except Exception as e:
            raise Http404("參數錯誤")
        return obj

    def get(self, request, pk=None):
        if pk:
            obj = self.get_object(pk)
            serializer_obj = ProjectsModelSerializer(instance=obj)
            return JsonResponse({'code': 0, 'res': "success", 'msg': serializer_obj.data})
        else:
            qs = Projects.objects.all()
            serializer_obj = ProjectsModelSerializer(instance=qs, many=True)
            return JsonResponse({'code': 0, 'res': "success", 'msg': serializer_obj.data}, safe=False)

驗證結果:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM