как получить текущего пользователя с представлениями на основе классов Django - PullRequest
0 голосов
/ 15 апреля 2019

NameError: name 'request' is not defined

class PostListViewPrv(ListView):
    queryset = Post.objects.filter(wszyscy=False, pracownik=request.user, published_date__lte=timezone.now()).order_by('-published_date')
    context_object_name = 'posts'
    paginate_by = 2
    template_name = 'komunikaty/komunikatyPrv.html'

переменная pracownik должна содержать имя пользователя

1 Ответ

3 голосов
/ 15 апреля 2019

Вам придется переопределить get_queryset():

class PostListViewPrv(ListView):
    queryset = Post.objects.all()
    context_object_name = "posts"
    paginate_by = 2
    template_name = "komunikaty/komunikatyPrv.html"

    def get_queryset(self):
        return self.queryset.filter(
            wszyscy=False,
            pracownik=self.request.user,
            published_date__lte=timezone.now(),
        ).order_by("-published_date")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...