Python Django:生成通用列表视图时返回多个对象时出错

Python Django:生成通用列表视图时返回多个对象时出错,python,django,Python,Django,我一直在试图让Django为我的网站返回一个通用列表。我使用以下代码创建类视图: class ServiceProviderListView(ListView): context_object_name = 'contractor_list' template_name = 'contractor_list.html' def get_queryset(self): self.service_type = get_object_or_404(Servic

我一直在试图让Django为我的网站返回一个通用列表。我使用以下代码创建类视图:

class ServiceProviderListView(ListView):
    context_object_name = 'contractor_list'
    template_name = 'contractor_list.html'

    def get_queryset(self):
        self.service_type = get_object_or_404(ServiceProvider, service_type=self.args[0])
        return ServiceProvider.objects.filter(service_type=self.service_type)
但是,我不断遇到以下错误:

Exception Type: MultipleObjectsReturned
Exception Value:    
get() returned more than one ServiceProvider -- it returned 736!

我从Django文档中复制了代码,但它就是不起作用。有人能帮你指出错误的来源吗?

你应该像这样替换它

def get_queryset(self):
    return ServiceProvider.objects.filter(service_type=self.args[0])

get()
将只返回一个对象,在您的模型中,将有多个具有相同服务类型的ServiceProvider对象。

第一行中不应该是
get\u对象或\u 404(ServiceType…