【发布时间】:2012-03-24 14:44:14
【问题描述】:
假设我有一个如下所示的 Django 项目:
- 项目 - urls.py - 项目 - urls.py -views.py根 URLconf 如下所示:
urlpatterns = patterns('',
url(r'^(?:items/)?$', include('items.urls')),
)
项目的 URLconf 如下所示:
urlpatterns = patterns('items.views',
url(r'^(?P<item_id>\d+)/$', 'view'),
)
views.py 包含一个方法:
def view(request, item_id):
item = get_object_or_404(Item, pk=item_id)
return render(request, 'item/view.html', {'item': item})
我正在尝试在 Django 的交互式 shell 中使用 django.core.urlresolvers.reverse,但它不起作用:
问题是反向 URL 缺少根 URLconf 中的 items/ 前缀。我做错了什么?
【问题讨论】:
-
你试过在url中使用名字吗?例如:url(...... , name='items-view'),并使用 reverse('items-view', args=[12])