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

真妮萨玛

我正在尝试向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网址来自另一个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'

表现

如果您正在打印data且可以看到其patientId内部,那么为什么要尝试使用request它呢?

可以这样做

    data = r.json()
    print(data)
    patient = data['patientId']
    patientId = MyUser.objects.get(id=patient)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Django - 'WSGIRequest' 对象没有属性 'get'

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

“ WSGIRequest”对象没有属性“ data”

将JavaScript变量Ajaxing到Django视图,获取:AttributeError:'WSGIRequest'对象没有属性'data'

将数据从JSON导入到Django AttributeError:“ WSGIRequest”对象没有属性“ data”

Django 错误“WSGIRequest”对象没有属性“玩家”

'WSGIRequest'对象没有属性'user'Django admin

Django 2.0的问题:“ WSGIRequest”对象没有属性“ session”

Django'WSGIRequest'对象在/ admin /处的AttributeError没有属性'user'

'WSGIRequest'对象没有属性'sessions'(Django 2.1.2)

django分页错误:AttributeError:'WSGIRequest'对象没有属性'Get'

Django:AttributeError 'WSGIRequest' 对象没有属性 'get'

Django测试用例错误“ WSGIRequest”对象没有属性“ session”

从Django 1.3升级到1.9时,'WSGIRequest'对象没有属性'session'

Django:“ WSGIRequest”对象没有属性“ user”?-AuthenticationMiddleware和SessionAuthenticationMiddleware按顺序

我一直在Django上获取'WSGIRequest'对象没有属性'Get'

Django单元测试:AttributeError:'WSGIRequest'对象没有属性'user'

'WSGIRequest' 对象没有属性 'is_authenticated'

“ WSGIRequest”对象没有属性“ update”

“ WSGIRequest”对象没有属性“ get”

“ WSGIRequest”对象没有属性“ cookies”

“ WSGIRequest”对象没有属性“ Post”

“ WSGIRequest”对象没有属性“ FILE”

AttributeError:“ WSGIRequest”对象没有属性“ user”

'WSGIRequest' 对象没有属性方法

编写Django代码时,我一直收到此错误:“ WSGIRequest”对象没有属性“ profile”

属性错误:'WSGIRequest' 对象没有属性 'get'

Django:模型表格“对象没有属性'cleaned_data'”

类型对象'ProductForm'没有属性'cleaned_data'django