2011-09-30 87 views
4

有没有办法扭转的网址添加到自定义的Django AdminSite,例如逆向自定义django管理网站的网址?

class MyAdminSite(AdminSite): 
    def get_urls(self): 
     urls = super(MyAdminSite, self).get_urls() 
     my_urls = patterns('', 
      url(r'some_view/$',self.admin_view(SomeView.as_view()), name='some_view'), 
     ) 
     return my_urls + url 

myadmin = MyAdminSite(app_name='my_admin') 


url(r'^admin/', include(my_admin.urls)), 

我如何扭转some_view

回答

9

尝试:{%URL管理:some_view%}

+0

伟大的,不知道为什么它没有之前,我在我的部分工作 – armonge

+0

,可能是一个错误他们有点挑剔,但很高兴我可以帮忙! – Brandon

3

或者,如果您为管理网站定义了如下名称:

class ExplorerAdmin(admin.AdminSite): 
    def __init__(self, *args, **kwargs): 
     super(ExplorerAdmin, self).__init__(*args, **kwargs) 
     self.name = 'explorer_admin' 
     self.app_name = 'rql' 

    def get_urls(self): 
     parent_patterns = super(RQLExplorerAdmin, self).get_urls() 
     dashboard_patterns = [ 
      url(r'^$', admin.site.admin_view(TemplateView.as_view(template_name='explorer.html')), name="explorer") 
     ] 
     return dashboard_patterns + parent_patterns 

反转网址将通过应用nam espacing使用自定义网站的名称,像这样:

reverse('explorer_admin:explorer')