Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/282.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
Python 使用djangorestframework装饰器时如何调试DjangoAjax函数?_Python_Ajax_Django_Django Rest Framework - Fatal编程技术网

Python 使用djangorestframework装饰器时如何调试DjangoAjax函数?

Python 使用djangorestframework装饰器时如何调试DjangoAjax函数?,python,ajax,django,django-rest-framework,Python,Ajax,Django,Django Rest Framework,如何在使用djangorestframeworkdecorator时调试ajax函数 @api_view(['POST', ]) def authfb(request): require_more_data = True if request.method == 'POST': first_name = request.data['fb_first_name'] last_name = request.data['fb_last_name']

如何在使用djangorestframeworkdecorator时调试ajax函数

@api_view(['POST', ])
def authfb(request):
    require_more_data = True
    if request.method == 'POST':
        first_name = request.data['fb_first_name']
        last_name = request.data['fb_last_name']
        fb_picture = request.data['fb_picture']
        fb_friends_number = request.data['fb_friends_number']
        fb_username = request.data['fb_username']
        fb_id = int(request.data['fb_id'])
        fb_link = request.data['fb_link']
        username = fb_username.replace(' ', '')

        # print(username)
        password = '112358'
        user = auth.authenticate(username=username, password=password)


    return Response(request.data)

代码示例。当通过ajax请求调用视图函数时,Django不会告诉任何错误。这使得我使用打印和手动搜索错误的行,但仍然不知道到底是什么错误。如何调试它,如何像往常一样使django日志出错

对于调试ajax函数,最好从Django视图返回响应数据(json格式的数据,以提高透明度),该数据可以通过ajax错误方法记录在控制台中。然后,通用方法在调试任何请求(print语句、try&except语句)时总是派上用场

我建议更频繁地使用try语句,因为它深受经验丰富的程序员的赞赏,而且易于调试

举个简单的例子:

def authfb(request):
    if request.method == "POST":
        msg = "Unknown error"
        status = False
        try:
            #do something
            msg = "Everything's​ Goood"
            status = True
        except Exception as e:
            msg = str(e)
    return JsonResponse ({'status':status, 'msg':msg, 'anything':'that_thing'})
虽然这只是我的建议,但还有很多更好的方法。 在我看来,调试没有正确的方法,每一种方法都是正确的


希望您得到了您想要的。

对于调试ajax函数,最好从Django视图返回响应数据(json格式的数据,以提高透明度),该数据可以通过ajax错误方法记录在控制台中。然后,通用方法在调试任何请求(print语句、try&except语句)时总是派上用场

我建议更频繁地使用try语句,因为它深受经验丰富的程序员的赞赏,而且易于调试

举个简单的例子:

def authfb(request):
    if request.method == "POST":
        msg = "Unknown error"
        status = False
        try:
            #do something
            msg = "Everything's​ Goood"
            status = True
        except Exception as e:
            msg = str(e)
    return JsonResponse ({'status':status, 'msg':msg, 'anything':'that_thing'})
虽然这只是我的建议,但还有很多更好的方法。 在我看来,调试没有正确的方法,每一种方法都是正确的


希望你得到了你想要的。

回复正常,有回复。在我的例子中是数据或请求数据。但这对django调试没有帮助。例如,当您创建模型的新实例时,如果每个字段都是必需的,那么添加NOTNULL约束的模型元字段选项将对django调试有所帮助。如果响应正常,则有响应。在我的例子中是数据或请求数据。但这对django调试没有帮助。例如,当您创建模型的新实例时,如果每个字段都是必需的,那么添加NOTNULL约束的模型元字段选项将有助于django调试。