2013-07-08 114 views
0

我有以下文件Django的反向映射

目錄/ urls.py(項目)

url(r'^$', include('dirapp.urls', namespace='dirapp')), 

dirapp/urls.py(APP)

url(r'^detail/(?P<pk>\d+)/$', views.DetailView.as_view(), name='detail') 

但當我去殼我不能做倒轉,所有這些都不成功

reverse('dirapp') 
reverse('dirapp:detail', kwargs={'pk':1}) 
+1

您需要刪除'$'中顯示你的第一個URL來解決。 –

回答

1

這是不正確

views.DetailView.as_view() 

必須有正確的視圖從的DetailView,例如擴展

views.PersonDetail.as_view() 

第二件事,不幸的是,您需要重新啓動外殼進行更改才能生效!

此外,如果有一個命名空間的所有URL需要使用此

reverse('namespace:name'), e.g. reverse('dirapp:index') 
2

取出$url(r'^$', include('dirapp.urls', namespace='dirapp'))

這表明URL圖案結束。

它應該是

url(r'^', include('dirapp.urls', namespace='dirapp')) 

瞭解更多關於including URL patterns here

+0

不幸的是我有同樣的結果,無論$是否存在:( – Koss645

+0

'reverse('dirapp')'無效,請嘗試'reverse('detail',args = [1])'。 ://docs.djangoproject.com/en/dev/ref/urlresolvers/#django.core.urlresolvers.reverse)。'kwargs'也可以工作 – karthikr

+0

不能正常工作:( – Koss645