【发布时间】:2019-09-10 09:48:31
【问题描述】:
## 在创建视图“add_car”方法时,我尝试将值分配给“response”变量,但它显示错误。如果我输入“response =None”,我得到的输出是 None
from django.shortcuts import render
from django.http import HttpResponse
from django.views.decorators.csrf import csrf_exempt
import json
from .models import Car
def index(request):
response=json.dumps([{}])
return HttpResponse(response,content_type='text/json')
def get_car(request,car_name):
if request.method == 'GET':
try:
car=Car.objects.get(name=car_name)
response=json.dumps([{'Car':car.name,'Top speed':car.top_speed}])
except:
response=json.dumps([{'Error':'No car with that name'}])
return HttpResponse(response,content_type='text/json')
@csrf_exempt
def add_car(request):
#response=None
if request.method =='POST':
payload=json.loads(request.body)
car_name=payload['car_name']
top_speed=payload['top_speed']
car=Car(name=car_name,top_speed=top_speed)
try:
car.save()
response=json.dumps([{'Success':'Car added succesfully'}])
except:
response=json.dumps([{'Error':'Car could not ne added'}])
return HttpResponse(response,content_type='text/json')
【问题讨论】:
-
请向我们展示完整的错误回溯!
-
显然,
if request.method =='POST'条件为 False。
标签: python django django-models django-rest-framework