Ajax在生产环境中不起作用,但在localhost、Django+;Restframework

Ajax在生产环境中不起作用,但在localhost、Django+;Restframework,ajax,django,django-rest-framework,ubuntu-16.04,digital-ocean,Ajax,Django,Django Rest Framework,Ubuntu 16.04,Digital Ocean,使用djangorestframework实现ajax在本地主机上运行良好,但在生产环境中不起作用。所有依赖项都是相同的。错误代码为500,因此view函数中存在不正确的情况 @api_view(['POST', ]) def live_search(request): if request.method == 'POST': key = request.data['key'] result = Event.objects.filter(title__is

使用djangorestframework实现ajax在本地主机上运行良好,但在生产环境中不起作用。所有依赖项都是相同的。错误代码为500,因此view函数中存在不正确的情况

@api_view(['POST', ])
def live_search(request):
    if request.method == 'POST':
        key = request.data['key']
        result = Event.objects.filter(title__istartswith=key)
        events = serializers.serialize('json', result)
        print (key)
        print (result)
    else:
        error = "Fuck"
        return error
    data = {
        'events': events,

    }
    return Response(data)
本地也一样,我在生产中使用git pull进行了更新,并检查它是否完全一致。所有依赖项都已安装,python3版本相同,应用迁移以确保。但无论如何,返回错误

编辑:就cyrrylic中的服务而言,ajax似乎可以处理英文字母,但cyrrylic不能,尽管我已经将所有必要的语言环境设置为vps(所有可能的俄语)

EDIT2:再次在ubuntu VPS上重新配置了区域设置。ru utf-8已安装,但仍无法正常工作


在发送之前,我可能需要处理ajax中的文本?序列化还是什么?

当发生500个错误时,您可以使用记录器记录堆栈跟踪。或者在生产环境中启用
DEBUG
,以查明错误的确切原因。如果没有回溯,这只是一些猜测。@Enix DEBUG true在生产环境中不会输出错误。因此,您唯一能做的就是使用记录器记录堆栈跟踪。