AssignUser/GroupstoContainerPage
创始人
2024-09-20 18:30:11
0

Assign User/Groups to Container Page”翻译成中文为“将用户/组分配到容器页面”,可以使用以下代码实现该功能:

from django.contrib.auth.models import Group, User
from django.shortcuts import render
from django.views.generic.edit import FormView
from django.views.generic.list import ListView
from django.views.generic.detail import DetailView

from .forms import AssignUsersToContainerPageForm
from .models import ContainerPage


class AssignUsersToContainerPageView(FormView, ListView, DetailView):
    template_name = 'assign_users_to_container_page.html'
    form_class = AssignUsersToContainerPageForm
    success_url = '/container_pages/'

    def get_context_data(self, **kwargs):
        container_page = ContainerPage.objects.get(pk=self.kwargs['pk'])
        users = User.objects.all()
        groups = Group.objects.all()
        context = super().get_context_data(**kwargs)
        context.update({
            'container_page': container_page,
            'users': users,
            'groups': groups,
        })
        return context

    def get_queryset(self):
        container_page = ContainerPage.objects.get(pk=self.kwargs['pk'])
        return container_page.users.all()

    def form_valid(self, form):
        container_page = ContainerPage.objects.get(pk=self.kwargs['pk'])
        users = User.objects.filter(pk__in=form.cleaned_data['users'])
        groups = Group.objects.filter(pk__in=form.cleaned_data['groups'])
        container_page.users.set(users)
        for group in groups:
            container_page.groups.add(group)
        return super().form_valid(form)

这段代码中,首先通过导入需要的模块和函数,引入了表单 AssignUsersToContainerPageForm 和模型 ContainerPage。然后创建视图类 AssignUsersToContainerPageView,集成了三个类:FormViewListViewDetailView,用于展示容器页面、显示用户列表和显示组列表。其中,FormView 用于处理表单提交,ListView 用于显示用户列表,DetailView 用于展示容器

相关内容

热门资讯

透视代打!德普之星辅助器app... 1、透视代打!德普之星辅助器app,wpk辅助插件,玩家必备(有挂介绍);详细教程。2、德普之星辅助...
透视模拟器!wpk透视辅助方法... 1、透视模拟器!wpk透视辅助方法,wepoker透视版下载,详细教程(先前真的是有挂);详细教程。...
透视黑科技!wepoker辅助... 透视黑科技!wepoker辅助器怎么用,wpk透视辅助软件,推荐一款(有挂方法)1、任何德州ai辅助...
透视了解!aapoker透视脚... WePoker透视辅助版本解析‌,透视了解!aapoker透视脚本下载,werplan外卦神器,专业...
透视好友!智星菠萝辅助器,we... 透视好友!智星菠萝辅助器,wepoker底牌透视脚本怎样安装,重大来袭(有挂总结);小薇(透视辅助)...
透视能赢!wepoker作弊辅... 透视能赢!wepoker作弊辅助,wepoker祈福有用吗,攻略教程(原本有挂);一、wepoker...
透视黑科技!wepoker免费... 您好,wepoker免费永久脚本这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】...
透视挂透视!德普之星透视辅助软... 透视挂透视!德普之星透视辅助软件下载,sohoo poker辅助,切实教程(从前有挂);玩家必备必赢...
透视软件!wepoker底牌透... 1、透视软件!wepoker底牌透视脚本app,wpk透视辅助软件,一分钟带你了解(有挂技巧);代表...
透视ai代打!德普之星辅助器,... WePoke高级策略深度解析‌;透视ai代打!德普之星辅助器,xpoker辅助器,分享教程(从前真的...