I have been tracking the development of class-based views for a few weeks now, and am just starting to adapt some of my work-in-progress sites. This post is in a bit of a grey area between django-users and django-developers, but I'm curious what is suggested for sites that make heavy use of django.core.urlresolvers.reverse() and {% url %} in templates.
Obviously with the old function-based views, we could simply do this: from django.core.urlresolvers import reverse def my_view(request): ... do something useful ... return response my_view_url = reverse('my_app.views.my_view') And likewise we could also reference that view using the {% url %} tag in templates. What is the recommendation for using reverse() and {% url %} when we migrate to class-based views? So fat the only solution I have come up with is naming the the URL patterns in urls.py, for example: urlpatterns = patterns('', (r'^$', TemplateView.as_view(template_name='main/index.html'), {}, 'home'), ) In the above case, we can now reverse('home') or {% url "home" %} - but is this the only way? If so, one would have to give some careful thought to the names of the URL patterns, so that it was readily obvious what view each named URL actually was. For example, one might end up using names like "myapp.IndexView" - a pseudo-hierarchical naming scheme, to essentially bring us back to the place we were with function-based view names. I look forward to people's ideas about this... -- You received this message because you are subscribed to the Google Groups "Django developers" group. To post to this group, send email to django-develop...@googlegroups.com. To unsubscribe from this group, send email to django-developers+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-developers?hl=en.