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

相关内容

热门资讯

热点推荐!土豪联盟怎么开辅助!... 热点推荐!土豪联盟怎么开辅助!一直真的是有辅助器(有挂秘籍)1、许多玩家不知道土豪联盟怎么开辅助辅助...
科技揭秘!福建相约13水外!果... 科技揭秘!福建相约13水外!果然存在有辅助攻略(确实有挂)1、福建相约13水外公共底牌简单,福建相约...
事发当天!堆堆乐辅助软件!果然... 事发当天!堆堆乐辅助软件!果然真的是有辅助插件(有挂规律)该软件可以轻松地帮助玩家将堆堆乐辅助软件外...
记者爆料!上品辅助器!好像是有... 记者爆料!上品辅助器!好像是有辅助app(确实有挂)1、任何上品辅助器透视是真的假的的玩家都可以机会...
重大科普!微乐江西小程序辅助器... 重大科普!微乐江西小程序辅助器!切实存在有辅助app(有挂攻略)1、实时微乐江西小程序辅助器透视辅助...
重大通报!吉祥填大坑小程序脚本... 重大通报!吉祥填大坑小程序脚本!都是存在有辅助挂(的确有挂)1、吉祥填大坑小程序脚本破解器简单,吉祥...
普及知识!福建天庭啊开心辅助软... 普及知识!福建天庭啊开心辅助软件!一直真的是有辅助app(讲解有挂)进入游戏-大厅左侧-新手福利-激...
科普分享!雀友会鱼虾蟹下载官网... 科普分享!雀友会鱼虾蟹下载官网辅助器!一直确实有辅助软件(有挂细节)1、任何雀友会鱼虾蟹下载官网辅助...
关于!福州十八扑外卦!总是存在... 关于!福州十八扑外卦!总是存在有辅助神器(竟然有挂)该软件可以轻松地帮助玩家将福州十八扑外卦外卦神器...
现有说明如下!填大坑游戏辅助器... 现有说明如下!填大坑游戏辅助器!总是存在有辅助工具(有挂教程)进入游戏-大厅左侧-新手福利-激活码辅...