Comment faire pour rediriger sur les conditions de la classe vues dans Django 1.3?

Je suis l'aide d'une ListView avec la liste des vidéos en fonction de balises. Le filtrage se passe dans get_queryset(). J'aimerais rediriger l'utilisateur vers une autre page si la balise ne contient aucune vidéo.

Avec une fonction, il serait facile. Requête, vérifiez le queryset, redirection. Avec une classe, je n'ai pas à le faire:

class VideosView(generic.ListView):

    def get_queryset(self):
        """
            This work.
        """

        tag = self.kwargs.get('tag', None)

        self.videos = Video.on_site.all()

        if tag:
            self.videos = Video.tagged.with_all(tag, self.videos)

        return self.videos

    def get(self, request, *args, **kwargs):
        """
        This doesn't work because self.videos doesn't exist yet.
        """
        if not self.videos:
            return redirect('other_page')

        return super(Videos, self).get(request, *args, **kwargs)
InformationsquelleAutor e-satis | 2011-03-25