Python 名称';客户';未定义CBV ListView

Python 名称';客户';未定义CBV ListView,python,django,Python,Django,url.py views.py from django.conf.urls import url from system import views app_name = 'project' urlpatterns = [ ... url(r'^cust/([\w-]+)/$',views.PublisherBookList.as_view()), ... ] models.py from . import models class PublisherBookLis

url.py

views.py

from django.conf.urls import url
from system import views

app_name = 'project'

urlpatterns = [
    ...
    url(r'^cust/([\w-]+)/$',views.PublisherBookList.as_view()),
    ...
]
models.py

from . import models

class PublisherBookList(ListView):

    def get_queryset(self):
        self.name = get_object_or_404(Customer, name=self.args[0])
        return Customer.objects.filter(name=self.name)
我确实去参观了

获取错误
未定义名称“客户”


我遗漏了什么?…

您需要在视图中导入客户。py

class Customer(models.Model):
    name = models.CharField(max_length=255)

您需要在views.py中导入客户

class Customer(models.Model):
    name = models.CharField(max_length=255)

您导入客户模型了吗?是的,已经导入了,
来自。导入模型
您导入了客户模型吗?是的,已经导入了,
来自。导入模型
已经导入了,我有很多模型。使用
def get\u queryset(self)的视图出现错误:
part。您导入了模块,但没有导入类。您可以将导入更改为
from.models导入客户
,也可以随时随地使用
models.Customer
,而不只是
Customer
ah gotcha。忘记了做
模型。
它现在可以工作了,但是没有结果。我检查我的数据库名
John
,将John放在url上,它不显示任何内容。默认情况下,Django详细视图使用
pk
url kwarg,这是对象的Django数据库ID。如果你想使用自定义slug attr,你需要添加一些东西。这里有一个相关的问题:这里解释了如何改变默认的slug字段,我有很多模型。使用
def get\u queryset(self)的视图出现错误:
part。您导入了模块,但没有导入类。您可以将导入更改为
from.models导入客户
,也可以随时随地使用
models.Customer
,而不只是
Customer
ah gotcha。忘记了做
模型。
它现在可以工作了,但是没有结果。我检查我的数据库名
John
,将John放在url上,它不显示任何内容。默认情况下,Django详细视图使用
pk
url kwarg,这是对象的Django数据库ID。如果你想使用自定义slug attr,你需要添加一些东西。这里有一个相关的问题:这里解释了如何改变默认的slug字段