有人能让我明白这到底是什么问题吗?django新手

有人能让我明白这到底是什么问题吗?django新手,django,class,django-rest-framework,Django,Class,Django Rest Framework,我使用的是django==3.2 我强制执行此错误: assertionErrorat/api/content/coordinator/read/0 request参数必须是django.http.HttpRequest的实例,而不是content\u delivery.view.coordinator.coordinator\u视图 这是我的代码: class Coordinator_View(object): @staticmethod def run(request):

我使用的是django==3.2

我强制执行此错误:

assertionErrorat/api/content/coordinator/read/0
request
参数必须是
django.http.HttpRequest
的实例,而不是content\u delivery.view.coordinator.coordinator\u视图

这是我的代码:

class Coordinator_View(object):

    @staticmethod
    def run(request):
        obj = Coordinator_View()
        return obj.create(request) # this is where the actual error happens

    @api_view(['POST'])
    def create(self, request):
        ...

这不是在django中处理视图的方式。您应该创建一个返回HttpResponse对象的方法。另外,请注意,“render()”函数是django用于创建HttpResponse对象的快捷方式函数。
例如:

from django.shortcuts import render

def example_view(request, *args, **kwargs):
    var = 'some value'
    context = {
        'var': var
    }

    return render(request, 'template_path', context=context)
基本版本:

from django.http import HttpResponse

def other_view(request, *args, **kwargs):
    return HttpResponse("some text")
此外,请确保“url.py”设置正确,您需要将django指向“url.py”内的正确视图。

[solved]
我没有尝试为基于类的视图使用或创建自定义类,而是根据需求继承视图类或API_视图类。继承这些父类的所有行为会将工作量减少0.8倍。

除非您真的想使用基于类的视图,在这种情况下,请忽略我的答案。但是,它要复杂得多,除非你正在创建一个非常大的项目,否则我不知道你为什么要这么做。感谢你的启发,我已经以正常的程序方式完成了这个项目,只是在尝试将它迁移到完整的OO。我会记住你的建议