名称'self'在课堂上没有定义?

时间:2017-08-02 15:16:28

标签: python django python-3.x django-views self

我正在尝试按所有者过滤查询集,但由于某种原因,使用self.request.user会导致NameError

class PackageListView(LoginRequiredMixin, ListView, Self):
    model = Package
    user = self.request.user
    queryset = Package.objects.filter(owner=user).order_by('-received_date')

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

加载类时定义... ne = int(input()) elements = [] for j in range(0, ne): elements.append(int(input())) ... 。此时您无法访问queryset。改为覆盖self.request.user

get_queryset

注意我已从class PackageListView(LoginRequiredMixin, ListView): model = Package def get_queryset(self): user = self.request.user return Package.objects.filter(owner=user).order_by('-received_date') 行中删除了Self - 这看起来像是一个错误。