在Django中实现添加user到group并查看
一、添加user到group
第一种:
user.groups.add(1) # add by id
第二种:
from django.contrib.auth.models import Group my_group = Group.objects.get(name='my_group_name') my_group.user_set.add(your_user)
二、查看group里面的用户
第一种:
group = Group.objects.get(name='blogger') users = group.user_set.all()
第二种:
User.objects.filter(groups__name='blogger')
第三种:
perm = Permission.objects.get(codename='blogger') users = User.objects.filter(Q(groups__permissions=perm) | Q(user_permissions=perm) ).distinct()
以上这篇在Django中实现添加user到group并查看就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
Django中使用group_by的方法
本文实例讲述了Django中使用group_by的方法.分享给大家供大家参考.具体分析如下: 在Django中怎样使用group_by语句呢?找了很多资料,都没有看到好的,在这里分享两种方法给大家: 首先,我们先建一个简单的模型. class Book(models.Model): name = models.CharField(u'书名',max_length=255,db_index = True) author = models.CharField(u'作者',max_length=255
-
在Django中管理Users和Permissions以及Groups的方法
管理认证系统最简单的方法是通过管理界面.然而,当你需要绝对的控制权的时候,有一些低层 API 需要深入专研,我们将在下面的章节中讨论它们. 创建用户 使用 create_user 辅助函数创建用户: >>> from django.contrib.auth.models import User >>> user = User.objects.create_user(username='john', ... email='jlennon@beatles.com', ...
-
对Django中内置的User模型实例详解
User模型 User模型是这个框架的核心部分.他的完整的路径是在django.contrib.auth.models.User. 字段 内置的User模型拥有以下的字段: 1.username: 用户名.150个字符以内.可以包含数字和英文字符,以及_.@.+..和-字符.不能为空,且必须唯一! 2.first_name:歪果仁的first_name,在30个字符以内.可以为空. 3.last_name:歪果仁的last_name,在150个字符以内.可以为空. 4.email:邮箱.可以为空
-
在Django中实现添加user到group并查看
一.添加user到group 第一种: user.groups.add(1) # add by id 第二种: from django.contrib.auth.models import Group my_group = Group.objects.get(name='my_group_name') my_group.user_set.add(your_user) 二.查看group里面的用户 第一种: group = Group.objects.get(name='blogger') use
-
Django中模型Model添加JSON类型字段的方法
本文实例讲述了Django中模型Model添加JSON类型字段的方法.分享给大家供大家参考.具体如下: Django里面让Model用于JSON字段,添加一个JSONField自动类型如下: class JSONField(models.TextField): __metaclass__ = models.SubfieldBase description = "Json" def to_python(self, value): v = models.TextField.to_pytho
-
Django中针对基于类的视图添加csrf_exempt实例代码
在Django中对于基于函数的视图我们可以 @csrf_exempt 注解来标识一个视图可以被跨域访问.那么对于基于类的视图,我们应该怎么办呢? 简单来说可以有两种访问来解决 方法一 在类的 dispatch 方法上使用 @csrf_exempt from django.views.decorators.csrf import csrf_exempt class MyView(View): def get(self, request): return HttpResponse("hi"
-
如何在django中添加日志功能
官方文档 猛戳这里 在settings中配置以下代码 #LOGGING_DIR 日志文件存放目录 LOGGING_DIR = "logs" # 日志存放路径 if not os.path.exists(LOGGING_DIR): os.mkdir(LOGGING_DIR) import logging LOGGING = { 'version': 1, 'disable_existing_loggers': False, 'formatters': { #格式化器 'standard'
-
django xadmin中form_layout添加字段显示方式
需求: 用的是django的框架,想显示一个基本固定的页面,用到了form_layout 上图的ROW中添加的是model中的字段名,可以显示对应的内容,如果想一行显示多个,可以写成 Row('Flow_type', 'Demand_name'),效果如下图(图片是别人的,借鉴一下) 想正常的显示,还有最后一步就是在把你需要展示的ROW中的字段,放在fields中(部分截取了一下) 补充知识:xadmin 编辑页隐藏字段 引用xadmin 的fieldSet 对不想显示的字段添加**{"styl
-
如何在Django中添加没有微秒的 DateTimeField 属性详解
前言 今天在项目中遇到一个Django的大坑,一个很简单的分页问题,造成了数据重复.最后排查发现是DateTimeField 属性引起的. 下面描述下问题,下面是我需要用到的一个 Task Model 基本定义: class Task(models.Model): # ...... 省略了其他字段 title = models.CharField(max_length=256, verbose_name=u'标题') created_at = models.DateTimeField(auto_
-
对Django中的权限和分组管理实例讲解
权限 Django中内置了权限的功能.他的权限都是针对表或者说是模型级别的.比如对某个模型上的数据是否可以进行增删改查操作.他不能针对数据级别的,比如对某个表中的某条数据能否进行增删改查操作(如果要实现数据级别的,考虑使用django-guardian).创建完一个模型后,针对这个模型默认就有四种权限,分别是增/删/改/查.可以在执行完migrate命令后,查看数据库中的auth_permission表中的所有权限. 字段: content_type_id:是一个外键,参考表是django_co
-
Django中的Model操作表的实现
Model 操作表 一.基本操作 # 增 models.Tb1.objects.create(c1='xx', c2='oo') #增加一条数据,可以接受字典类型数据 **kwargs obj = models.Tb1(c1='xx', c2='oo') obj.save() dic = {'c1':'xx','c2':'oo'} models.Tb1.objects.create(**dic) #Form的产出结果是一个字典,可以根据这个Form的字典和**直接在数据库创建数据 # 查 mod
-
Django 权限管理(permissions)与用户组(group)详解
如果你只是利用Django开发个博客,大部分用户只是阅读你的文章而已,你可能根本用不到本节内容.但是如果你想开发一个内容管理系统,或用户管理系统,你必需对用户的权限进行管理和控制.Django自带的权限机制(permissions)与用户组(group)可以让我们很方便地对用户权限进行管理.小编我今天就尝试以浅显的语言来讲解下如何使用Django自带的权限管理机制. 什么是权限? 权限是能够约束用户行为和控制页面显示内容的一种机制.一个完整的权限应该包含3个要素: 用户,对象和权限,即什么用户对
随机推荐
- php并发加锁示例
- Git下载与环境变量配置方法
- AJAX天气预报前台
- iOS滑动解锁、滑动获取验证码效果的实现代码
- php简单实现查询数据库返回json数据
- python中的reduce内建函数使用方法指南
- javascript设置和获取cookie的方法实例详解
- 详解远程连接Mysql数据库的问题(ERROR 2003 (HY000))
- PHP打开和关闭文件操作函数总结
- 屏蔽鼠标右键、Ctrl+N、Shift+F10、Alt+F4、F11、F5刷新、退格键
- Linux命令搜索命令whereis与which的区别
- JQuery datepicker 用法详解
- JSON创建键值对(key是中文或者数字)方式详解
- js下获得客户端操作系统的函数代码(1:vista,2:windows7,3:2000,4:xp,5:2003,6:2008)
- 用C#写的ADSL拨号程序的代码示例
- Android 自定义view和属性动画实现充电进度条效果
- 12条写出高质量JS代码的方法
- 深入浅析vue组件间事件传递
- centos yum更新及删除多余启动项
- Spring Boot 自定义 Shiro 过滤器无法使用 @Autowired问题及解决方法