How to use url pattern named group with generic view?

django, django-generic-views

Solution

You need to create your own implementation of ListView like so:

class BlogListView(ListView):
    model = Blog

    def get_queryset(self):
        return super(BlogListView, self).get_queryset().filter(
            published=True, author__id=self.kwargs['uid'])

and then use it in your URLconf:

urlpatterns = patterns('',
    url(r'^blog/(?P<uid>[\d+])/$', BlogListView.as_view(),
        name='blog_list'),

The documentation for class-based generic views is, in my opinion, not quite up to scratch with the rest of the Django project yet - but there are some examples which show how to use `ListView` in this way:

https://docs.djangoproject.com/en/1.3/topics/class-based-views/#viewing-subsets-of-objects

Problem

I'm trying to display blog records for particular author using generic view: ``` urlpatterns = patterns('', url(r'^blog/(?P<uid>[\d+])/$', ListView.as_view( queryset=Blog.objects.filter(published=True, author=uid), ), name='blog_list'), ``` But I get NameError: name 'uid' is not defined Is it possible to use urlconf named groups this way?

Original source