0
当试图把一个JSON文件到我的API,我碰到下面的错误 -Django的REST框架PUT细节未发现
{
"detail": "Not found"
}
这只能如果我试图把一个新项目不更新和现有的一个。这是我的观点 -
class DeployEventView(APIView):
def get_object(self, pk):
try:
return Trgmst.objects.get(pk=pk)
except Trgmst.DoesNotExist:
raise Http404
def get(self, request, format=None):
name = self.request.GET.get('name')
pk = Trgmst.objects.filter(trgmst_name=name).values_list('trgmst_id', flat=True)
trgmst = self.get_object(pk)
serializer = EventSerializer(trgmst)
return Response(serializer.data)
def put(self, request, format=None):
name = self.request.GET.get('name')
pk = Trgmst.objects.filter(trgmst_name=name).values_list('trgmst_id', flat=True)
trgmst = self.get_object(pk)
serializer = EventSerializer(trgmst, data=request.DATA)
if serializer.is_valid():
serializer.save()
return Response(serializer.data)
return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
def delete(self, request, format=None):
name = self.request.GET.get('name')
pk = Trgmst.objects.filter(trgmst_name=name).values_list('trgmst_id', flat=True)
trgmst = self.get_object(pk)
trgmst.delete()
return Response(status=status.HTTP_204_NO_CONTENT)
这是我试图把该URL -
http://localhost:9001/deploy/event/
我也试过这个网址 - (项目目前不存在)
http://localhost:9001/deploy/event/?name=evnt_job_test
这里是我的JSON -
{
"trgmst_id": 2249,
"trgmst_type": 1,
"trgmst_name": "evnt_job_TEST ",
"trgmst_desc": null,
"trgmst_public": "Y",
"trgmst_active": "Y",
"trgmst_trigger": 10,
"owner_name": "Operations ",
"trgmst_jobctl": 1,
"trgmst_alljobs": "N",
"trgmst_lstchgtm": "2014-09-26T13:44:27",
"trgmst_parm": "OP=0,EX1=1,EX2=1",
"trgmst_maxreruns": 0,
"nodmst_name": null,
"servicemst_name": null,
"trgmst_info": null,
"trgmst_monitor": 1,
"trgmst_trgtskcnt": 0,
"trgmst_lasttrgtskrun": null,
"event_action_details": [
{
"trgtsk_id": 2982,
"trgmst_id": 2249,
"tskmst_id": null,
"trgtsk_order": 1,
"trgtsk_type": 1
}
]
}
您是否能够追查此错误的原因? – 2015-05-16 02:56:13