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

相关内容

热门资讯

玩家必备科技!hhpoker智... 玩家必备科技!hhpoker智能辅助插件,hhpoker免费透视脚本,确实有挂(确实有挂)1)辅助插...
玩家必看教程!aa poker... 玩家必看教程!aa poker辅助,aapoker透视插件,一贯有挂(有挂技巧)1、下载好正确养号方...
我来分享!wepoker透视脚... 我来分享!wepoker透视脚本是什么,hhpoker辅助软件是真的么,本来真的有挂(存在有挂)1、...
重大通报!德普辅助器怎么用,h... 重大通报!德普辅助器怎么用,hhpkoer辅助挂是真的吗,一直是真的有挂(有挂辅助)1、脚本辅助下载...
研究成果!wpk辅助,soho... 研究成果!wpk辅助,sohoo poker辅助器,竟然真的有挂(有挂总结)1、破解器简单,机器人操...
三分钟了解!德普之星辅助软件,... 三分钟了解!德普之星辅助软件,德州透视插件,确实真的有挂(的确有挂)进入游戏-大厅左侧-新手福利-激...
必备科技!wepoker私人局... 您好,这款游戏可以开挂的,确实是有挂的,需要了解加去威信【136704302】很多玩家在这款游戏中打...
推荐几款新版!aapoker真... 推荐几款新版!aapoker真的假的,wepoker养号规律,果然是真的有挂(有挂详情)1、脚本辅助...
推荐一款!werplan怎么作... 推荐一款!werplan怎么作弊,cloudpoker外挂,竟然有挂(有挂方式)亲,关键说明,透视脚...
我来向大家传授!pokemmo... 我来向大家传授!pokemmo辅助器手机版下载,hhpoker脚本下载,一贯是有挂(有挂功能)1、每...