Python 名称';客户';未定义CBV ListView
url.py views.pyPython 名称';客户';未定义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
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字段