考虑到这是 djangorestfranewokr 装饰器所涵盖的 ajax 函数,如何调试在本地运行但在生产环境中不起作用的如此大的和平代码 - 调试不起作用,django 不记录任何错误,唯一的信息我有什么东西坏了只有 500。或者 Django 必须记录错误,并且出了什么问题?
@api_view(['POST', ])
def load_dialog(request):
if request.method == 'POST':
party_id = request.data['party_id']
ticket_id = request.data['ticket_id']
party = UserProfile.objects.get(pk=party_id)
ticket = Ticket.objects.get(pk=ticket_id)
try:
dialog = Dialog.objects.get(Q(sales=party) | Q(sales=request.user.userprofile))
except Dialog.DoesNotExist:
dialog = None
if dialog:
textbool = None
if dialog.sales == request.user.userprofile:
textbool = "show"
messages = Message.objects.filter(dialog=dialog)
s_messages = serializers.serialize('json', messages)
s_textbool = json.dumps(textbool)
s_dialog_id = json.dumps(dialog.id)
data = {
'messages': s_messages,
'sales': s_textbool,
'dialog_id':s_dialog_id,
}
else:
owner = ticket.ownership
new_dialog = Dialog.objects.create(buyer=request.user.userprofile,sales=owner,ticket=ticket)
textbool = None
if new_dialog.sales == request.user.userprofile:
textbool = "show"
messages = Message.objects.filter(dialog=new_dialog)
s_messages = serializers.serialize('json', messages)
s_textbool = json.dumps(textbool)
s_dialog_id = json.dumps(new_dialog.id)
data = {
'messages': s_messages,
'sales': s_textbool,
'dialog_id':s_dialog_id,
}
else:
error = "Fuck"
return error
return Response(data)
最佳答案
在生产中你可以使用 ADMINS
启用 Error Reporting 的设置通过电子邮件。
关于python - 如何调试仅在生产中不起作用的ajax django View 功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43985336/