gpt4 book ai didi

Django 'WSGIRequest' 对象没有属性 'data'

转载 作者:行者123 更新时间:2023-12-02 06:28:26 26 4
gpt4 key购买 nike

我正在尝试向 API 发出发布请求,并将结果保存到我的数据库表之一中。

这是我的代码。

这是我的模型。 patientId 是 MyUser 表的 userId 的外键

class MyUser(AbstractUser):
userId = models.AutoField(primary_key=True)
gender = models.CharField(max_length=6, blank=True, null=True)
nric = models.CharField(max_length=9, blank=True, null=True)
birthday = models.DateField(blank=True, null=True)
birthTime = models.TimeField(blank=True, null=True)

class BookAppt(models.Model):
clinicId = models.CharField(max_length=20)
patientId = models.ForeignKey(MyUser, on_delete=models.CASCADE)
scheduleTime = models.DateTimeField(blank=True, null=True)
ticketNo = models.CharField(max_length=5)
status = models.CharField(max_length=20)

View .py。 api url 来自另一个 django 项目
@csrf_exempt
def my_django_view(request):

if request.method == 'POST':
r = requests.post('http://127.0.0.1:8000/api/makeapp/', data=request.POST)
else:
r = requests.get('http://127.0.0.1:8000/api/makeapp/', data=request.GET)

if r.status_code == 201 and request.method == 'POST':
data = r.json()
print(data)
patient = request.data['patientId']
patientId = MyUser.objects.get(id=patient)

saveget_attrs = {
"patientId": patientId,
"clinicId": data["clinicId"],
"scheduleTime": data["created"],
"ticketNo": data["ticketNo"],
"status": data["status"],
}
saving = BookAppt.objects.create(**saveget_attrs)

return HttpResponse(r.text)
elif r.status_code == 200: # GET response
return HttpResponse(r.json())
else:
return HttpResponse(r.text)

结果在 print(data)这是。
[31/Jan/2018 10:21:42] "POST /api/makeapp/ HTTP/1.1" 201 139
{'id': 22, 'patientId': 4, 'clinicId': '1', 'date': '2018-07-10', 'time': '08:00 AM', 'created': '2018-01-31 01:21:42', 'ticketNo': 1, 'status': 'Booked'}

但错误就在这里
File "C:\Django project\AppImmuneMe2\customuser\views.py", line 31, in my_django_view
patient = request.data['patientId']
AttributeError: 'WSGIRequest' object has no attribute 'data'

最佳答案

Django rest 框架有自己的 Request 对象。您需要使用 api_view装饰器在函数 View 中启用此请求类型。

关于Django 'WSGIRequest' 对象没有属性 'data',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48534366/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com