Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Json 如何从django请求中获取分钟/小时/秒?_Json_Datetime_Django Models_Request_Tastypie - Fatal编程技术网

Json 如何从django请求中获取分钟/小时/秒?

Json 如何从django请求中获取分钟/小时/秒?,json,datetime,django-models,request,tastypie,Json,Datetime,Django Models,Request,Tastypie,我想从请求中分别检索时间字段。但当我尝试处理值时,HttpResponse会给出406状态代码 def ReservationActions(request): if(request.method == 'POST'): body_as_json = json.loads(request.body) try: veh = Vehicles.objects.get(id = body_as_json['vehic__id']) sp = ParkingS

我想从请求中分别检索时间字段。但当我尝试处理值时,HttpResponse会给出406状态代码

def ReservationActions(request):
  if(request.method == 'POST'):
    body_as_json = json.loads(request.body)
    try:
      veh = Vehicles.objects.get(id = body_as_json['vehic__id'])
      sp = ParkingSpots.objects.get(id = body_as_json['spot__id'])
      reserve = Reservations(vehic = veh, spot = sp, start_date = body_as_json.get('start'), end_date = body_as_json.get('end'))
      if(reserve.start_date.datetime.minute % 15 is not 0): #this is where it goes to "except" part
        return HttpResponse(status=306)
      reserve.save()
      # Return a "created" (201) status code.
      return HttpResponse(status=201)
    except:
      # Return a "not acceptable" (406) status code.
      return HttpResponse(status=406)
这是我发送的json对象:

{
  "vehic__id": 1,
  "spot__id": 1,
  "start": "2018-03-29T23:00:00.999Z",
  "end" : "2018-03-30T23:00:30.000Z"
}

您可以将其解析为
datetime
对象,例如使用。例如:

from dateutil.parser import parse as dtparse

try:
start = dtparse(body_as_json.get('start'))
except (ValueError, TypeError):
    # ... (invalid date, or not a string)
    pass

您可以将其解析为
datetime
对象,例如使用。例如:

from dateutil.parser import parse as dtparse

try:
start = dtparse(body_as_json.get('start'))
except (ValueError, TypeError):
    # ... (invalid date, or not a string)
    pass