Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.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
Json 在基于Django类的视图中,处理POST请求的正确方法是什么?_Json_Django_Post_Get - Fatal编程技术网

Json 在基于Django类的视图中,处理POST请求的正确方法是什么?

Json 在基于Django类的视图中,处理POST请求的正确方法是什么?,json,django,post,get,Json,Django,Post,Get,在基于类的视图中,我处理post请求(这是一个AJAX调用),在数据库表中插入一些数据,并将一些json返回到前端 def post(self,request,*args,**kwargs): result_data = {} doc = kwargs['doc'] doc_obj = Document.objects.get_document(doc) doc_id = doc_obj.doc_id reference_obj = Reference

在基于类的视图中,我处理post请求(这是一个AJAX调用),在数据库表中插入一些数据,并将一些json返回到前端

def post(self,request,*args,**kwargs):

    result_data = {}
    doc = kwargs['doc']
    doc_obj = Document.objects.get_document(doc)

    doc_id = doc_obj.doc_id
    reference_obj = Reference.objects.save_to_db(request,doc_id)

    friendly_name = reference_obj.friendly_name
    result_data['friendly_name'] = friendly_name

    return HttpResponse(json.dumps(result_data),content_type='application/json')
我的问题是,这是处理post请求的正确方法吗?我的疑问出现在这里——我正在将一些数据写入数据库,并返回一个json,其中包含我写入数据库的相同数据的属性


我是否应该采取不同的做法,即首先在数据库中存储一些数据,只返回行的id,然后再次在同一URL上发出GET请求?

我想说,如果它是一个API,最好通过像您那样返回整个对象来最小化查询数量。在为web用户界面提供服务的情况下,如果需要显示,则更简单的方法是返回id并从客户端本身获取其余数据


两种方式都可以。收益微乎其微。我还看到过一些应用程序给出了本地的积极反馈,如果请求不成功,则用消极反馈代替。这项技术可以提高响应能力,这一点一直受到赞赏

Django rest框架返回插入对象的json,因此我认为复制这种行为是合理的