django:URL调度程序 - >无限循环

时间:2010-08-18 16:35:48

标签: django-admin

urlpatterns = patterns('',
    #(r'admin/main/report/', main_page_redirect),
    (r'^admin/', include(admin.site.urls)),
    (r'^', main_page_redirect),
)


def main_page_redirect(request):
    return HttpResponseRedirect('/admin/main/report/?e=+2')

然后当我尝试去/ localhost时它变成了一个无限循环。 有谁知道如何解决它?

2 个答案:

答案 0 :(得分:0)

settings.py中的LOGIN_URL设置为什么?管理站点可能正在尝试将您重定向到您的登录页面,该页面可能是重定向到管理站点的页面。只是一个想法。

答案 1 :(得分:0)

我没有将视图映射到admin / main / report /,我能够重新创建同样的东西。

我不知道为什么,但是如果您创建一个视图并取消注释您的urlpattern以用于admin / main / report /(并且不要将main_page_redirect用于该视图,那么您应该很高兴。

以下是我的例子:

def something(request):
    return http.HttpResponseRedirect('/admin/main/report/')

def somethingelse(request):
    return http.HttpResponse("here")

urlpatterns = patterns('',
    url(r'admin/main/report/', somethingelse), #without this i get an infinite loop
    url(r'^admin/', include(admin.site.urls)),
    url(r'', something),
)