0

关于这个主题有一个相对相似的线程,但我似乎无法弄清楚如何将其转化为我的情况。我有一个名册,我只需要显示查看者的同一组织内的组织用户。我有一个正在开发的 web 应用程序,用于管理组织中的志愿者。我还是后端开发的新手,所以我在解决问题时遇到了麻烦。

这是使用 Django_Tables2 包的表格视图的代码:

#tables.py
class VolunteerTable(tables.Table):
    class Meta:
        model = OrganizationUser

# views.py
def VolunteerRoster(request):
    table = tables.VolunteerTable(OrganizationUser.objects.all())
    return render(request, 'staff/roster.html', {'table': table})
I'm trying to figure out how to either convert the view to a class-based view so I can use the OrganizationMixin and the SingleTableView in Django_Tables2's documentation.

我正在根据其他线程的解释考虑这样的事情

class VolunteerRoster(SingleTableView, OrganizationMixin):
    table_class = VolunteerTable
    queryset = OrganizationUser.objects.all()
    template_name = "staff_roster.html"

    def get_queryset(self):
        return self.queryset.filter(organization=self.get_organization())

当我尝试这个时,我得到:“TypeError:init() 需要 1 个位置参数,但给出了 2 个”

正如我所说,我还是 django 的新手,所以我不确定在这种情况下要修复什么。

4

1 回答 1

0

尝试:

def get_queryset(self):
    return OrganizationUser.objects.filter(organization=self.request.user.organization)
于 2018-12-13T05:21:31.817 回答