假设已完成所有导入。
我有一个这样的模型:
class Package(models.Model):
uuid = models.UUIDField(default=uuid.uuid4, editable=False)
name = models.CharField(max_length=400)
然后我想像这样使用泛型ListView
:
class PackageList(ListView):
model = Package
template_name = 'package/list.html'
所有网址都是这样的:
url(r'^package/list/$', views.PackageList.as_view(), name='package_list'),
当我访问localhost:8000
时,我明白了
ValueError at /package/list/
badly formed hexadecimal UUID string
但是,DetailView
通用视图会成功加载基于uuid
的详细信息,而不会出现任何问题。
只有在使用ListView
时才会出现错误。
我做错了什么?
答案 0 :(得分:0)
想通。
网址序列是罪魁祸首。以这种方式修改它:
url(r'^travel/add/$', views.TravelAdd.as_view(), name='travel_add'),
url(r'^travel/list/$', views.TravelList.as_view(), name='travel_list'),
url(r'^travel/(?P<uuid>[\w-]+)/$', views.TravelDetail.as_view(), name='travel_detail'),
以前,就是这样:
url(r'^travel/add/$', views.TravelAdd.as_view(), name='travel_add'),
url(r'^travel/(?P<uuid>[\w-]+)/$', views.TravelDetail.as_view(), name='travel_detail'),
url(r'^travel/list/$', views.TravelList.as_view(), name='travel_list'),