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 用于展示容器

相关内容

热门资讯

透视系统!wepoker辅助软... 您好,wepoker辅助软件价格这款游戏可以开挂的,确实是有挂的,需要了解加去威信【48527505...
目前!wepoker怎么设置盖... 目前!wepoker怎么设置盖牌(透视)好像真的是有辅助工具(真是有挂)-哔哩哔哩1、许多玩家不知道...
透视中牌率!hhpoker辅助... 透视中牌率!hhpoker辅助器(透视)本来存在有辅助插件(有挂存在)-哔哩哔哩一、hhpoker辅...
现有关情况通报如下!德扑HHp... 现有关情况通报如下!德扑HHpoker有挂吗(透视)都是有辅助安装(有挂解密)-哔哩哔哩1、超多福利...
今年以来!hhpoker的辅助... 今年以来!hhpoker的辅助是真的吗(透视)切实有辅助平台(有挂教学)-哔哩哔哩1、起透看视 hh...
随着!菠萝德州透视脚本(透视)... 随着!菠萝德州透视脚本(透视)确实有辅助插件(有挂方针)-哔哩哔哩1、超多福利:超高返利,海量正版游...
透视好牌!wepoker免费辅... 透视好牌!wepoker免费辅助器(透视)一直是有辅助辅助器(有挂细节)-哔哩哔哩1.wepoker...
透视模拟器!wepoker私人... 透视模拟器!wepoker私人局俱乐部怎么进(透视)真是真的有辅助神器(有挂教学)-哔哩哔哩小薇(辅...
为切实保障!hhpoker有没... 为切实保障!hhpoker有没有外开挂(透视)一直是有辅助平台(有挂头条)-哔哩哔哩1、很好的工具软...
透视插件!wepoker透视破... 透视插件!wepoker透视破解版(透视)好像是有辅助修改器(有挂猫腻)-哔哩哔哩1、在wepoke...