code_junkie

Django: How do I create a generic url routing to views?

Nov 11th, 2011
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.81 KB | None | 0 0
  1. (r'^Project/$', 'mysite.app.views.project'),
  2. (r'^Links/$', 'mysite.app.views.links'),
  3. (r'^Profile/$', 'mysite.app.views.profile'),
  4. (r'^Contact/$', 'mysite.app.views.contact'),
  5.  
  6. map.connect(':controller/:action/:id')
  7.  
  8. mods = ('Project','Links','Profile','Contact')
  9.  
  10. urlpatterns = patterns('',
  11. *(('^%s/$'%n, 'mysite.app.views.%s'%n.lower()) for n in mods)
  12. )
  13.  
  14. urlpatterns = patterns('mysite.app.views',
  15. (r'^Project/$', 'project'),
  16. (r'^Links/$', 'links'),
  17. (r'^Profile/$', 'profile'),
  18. (r'^Contact/$', 'contact'),
  19. )
  20.  
  21. def router(request, function, module):
  22. m =__import__(module, globals(), locals(), [function.lower()])
  23. try:
  24. return m.__dict__[function.lower()](request)
  25. except KeyError:
  26. raise Http404()
  27.  
  28. (r'^(?P<function>.+)/$', router, {"module": 'mysite.app.views'}),
Add Comment
Please, Sign In to add comment