我确实看到了另一个题为“如何使用 django 反转通用视图”和“django 命名 url,通用视图”的问题,但是我的问题有点不同,我不认为这是一个骗局。
代码:
from django.views.generic import list_detail, create_update
from django.core.urlresolvers import reverse
from django.conf.urls.defaults import *
partners_add = {'form_class': FooForm,
'post_save_redirect': reverse('foo-list'),
}
urlpatterns = patterns('',
url(r'^foo/$', list_detail.object_list, foo_list, name='foo-list'),
url(r'^foo/add/$', create_update.create_object, foo_add, name='foo-add'),
)
但是,当我运行代码时,我收到错误“包含的 urlconf bar.urls 中没有任何模式”。然后,当我将 reverse('foo-list') 更改为 '/bar/foo/' 时,它可以工作。但是,如果我在模板中调用 {% url foo-list %} 我得到正确的 url 并且代码有效。
添加反向也会破坏相同 urlpatterns 中的所有 url,并出现相同的错误。
我在 Python 2.6 上运行 Django 1.1