Cómo acceder a HttpRequest desde urls.py en Django

Básicamente, quiero usar una vista genérica que enumera los objetos basados ​​en un nombre de usuario. Ahora, la pregunta es, ¿cómo hago algo como:

(r'^resources/$', ListView.as_view( queryset=Resources.objects.filter(user=request.user.username), ... ) ) 

Sin embargo, no pude encontrar una forma de acceder al objeto HttpRequest (solicitud) … ¿O necesito usar mis propias vistas y hacer toda la selección de objetos allí?

Si realmente desea saturar su URLconf directamente, puede hacerlo así:

 (r'^resources/$', lambda request: ListView.as_view(queryset=Resources.objects.filter(user=request.user.username), ...)(request) ) 

O acceda a la solicitud subclasificando la vista:

 class MyListView(ListView): def dispatch(self, request, *args, **kwargs): self.queryset = Resources.objects.filter(user = request.user.username) return super(MyListView, self).dispatch(request, *args, **kwargs) 

Puedes intentar subclasificar la vista genérica:

 class PublisherListView(ListView): def get_queryset(self): return Resources.objects.filter(user=self.request.user.username) 

Entonces su entrada de urls se vería como:

 (r'^resources/$', PublisherListView.as_view( ... ) ) 

Puede encontrar más información sobre el filtrado dynamic en vistas basadas en clases aquí: http://docs.djangoproject.com/en/dev/topics/class-based-views/#dynamic-filtering