Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.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 Django Rest框架请求作为参数_Python_Django_Django Rest Framework - Fatal编程技术网

Python Django Rest框架请求作为参数

Python Django Rest框架请求作为参数,python,django,django-rest-framework,Python,Django,Django Rest Framework,我正在学习Django rest框架。我知道如何使用基于类的视图。为什么方法GET、PUT、DELETE等需要“request”参数,即使对象本身包含相同的request属性 例如,在此代码中: class ArticleDetailViewAPIView(APIView): def get_object(self, pk): object = get_object_or_404(Article, pk=pk) return object def get(self, requ

我正在学习Django rest框架。我知道如何使用基于类的视图。为什么方法GET、PUT、DELETE等需要“request”参数,即使对象本身包含相同的request属性

例如,在此代码中:

class ArticleDetailViewAPIView(APIView):

def get_object(self, pk):
    object = get_object_or_404(Article, pk=pk)
    return object

def get(self, request, pk):
    object = self.get_object(pk=pk)
    serializer = SerializerArticle(object)
    return Response(serializer.data)
例如,如果在get方法中,我放置了以下行:

print("Equal: ", self.request is request)

在控制台中,输出为TRUE

在Django中,每个视图都必须有一个必需的参数
request
。在CBV的情况下,传入请求被设置为实例属性,以获得更好的
OOP
experienceSo,仅用于约定目的?在Django中,每个视图都必须具有必需的参数
request
。在CBV的情况下,传入请求被设置为实例属性,以获得更好的
OOP
experienceSo,是否仅用于约定目的?