django-admin 设计User外键,设计model
设置外键
class profile_user(AbstractBaseUser, PermissionsMixin):
company = models.ForeignKey(Company, default=2,verbose_name='单位名称')
USERNAME_FIELD = 'userna'
REQUIRED_FIELDS = ['username']
class Meta:
verbose_name = _('user')
verbose_name_plural = _('users')
# abstract = True 不设为抽象的,不然会报错
unique_together = (("username", "company"),)
db_table ='auth_user'
将username和company连接起来判断唯一
设置USERNAME_FIELD为新定义的一个字段,将username和company连接起来判断唯一,实现了不同company下面可以有相同username,
通过unique_together = (("username", "company"),)这个来设置。
default,字段为空,字段名,表名
company = models.ForeignKey(Company, default=2,verbose_name='单位名称'),default这个还挺好用,指定哪个model可以添加,要不然添加的时候出问题,因为Company如果还没创建添加User就会出错。
usertype = models.CharField(max_length=2,
choices=(
('gl','管理员'),
('md','普通用户'),
),null=False,blank=False,default='md',verbose_name='用户类型')
这个可以显示一个下拉框在admin后台,让你进行选择,('gl','管理员'),前面的为保存字段名称,后面的为显示字段名称,default='md',默认显示
contact = models.CharField(max_length=30, verbose_name='联系人', blank=True, null=True),一般是这么写字段可以设定为空blank=True, null=True
contact = models.CharField(max_length=30, verbose_name='联系人', blank=True, null=True),verbose_name='联系人'设置显示在admin字段名称
class Meta:
verbose_name = '客户'
verbose_name_plural = verbose_name
db_table = 'auth_custom'
verbose_name = '客户'
verbose_name_plural = verbose_name
db_table和verbose_name都可以设置显示表名称,我倒是忘记了有什么区别了。
设置字段
设置数值字段小数点后有六位
lng = models.DecimalField(max_digits=10, decimal_places=6, verbose_name='经度',blank=True,null=True)
django-admin 设计User外键,设计model的更多相关文章
- django admin编辑被外键关联的主表时支持显示字表记录
假设有模型 class A(models.Model): name = models.CharField() class B(models.Model): name = models.CharFiel ...
- 【Python】django模型models的外键关联使用
Python 2.7.10,django 1.8.6 外键关联:http://www.bubuko.com/infodetail-618303.html 字段属性:http://www.cnblogs ...
- django开发中关于外键设置
django开发中关于外键设置 我们建模型的时候会用到ForeignKey 而由于外键的约数会导致一些保存 所有我们ctrl+左键进入源码 源码 def __init__(self, to, on_d ...
- Django学习——Django测试环境搭建、单表查询关键字、神奇的双下划线查询(范围查询)、图书管理系统表设计、外键字段操作、跨表查询理论、基于对象的跨表查询、基于双下划线的跨表查询
Django测试环境搭建 ps: 1.pycharm连接数据库都需要提前下载对应的驱动 2.自带的sqlite3对日期格式数据不敏感 如果后续业务需要使用日期辅助筛选数据那么不推荐使用sqlite3 ...
- Django学习手册 - ORM 外键
Django 外键创建 关键语法: models.ForeignKey("UserGroup",to_field="gid",default=1,on_dele ...
- Django 中跨 app 创建外键、多对多引用的方法
问题描述 我的 Django 项目中有两个 app. 在 PersonalCenter app下的 models.py 下定义了一个 Footprint 类: 在 LoginAndRegister a ...
- python django中的orm外键级联删除
今天添加了一个路由表,路由表做外键,然后添加了几个组,路由表为组的外键,当我使用删除功能对路由表进行删除时,竞然将我的组也相当的删除了:尽管这是测试,但放到生产环境中还是会发生意外的:这个问题要解决: ...
- Django(15)外键和表关系
外键删除操作 如果一个模型使用了外键.那么在对方那个模型被删掉后,该进行什么样的操作.可以通过on_delete来指定.可以指定的类型如下: CASCADE:级联操作.如果外键对应的那条数据被删除了, ...
- Django框架表关系外键-多对多外键(增删改查)-正反向的概率-多表查询(子查询与联表查询)
目录 一:表关系外键 1.提前创建表关系 2.目前只剩 书籍表和 书籍作者表没创建信息. 3.增 4.删 5.修改 二:多对多外键增删改查 1.给书籍绑定作者 2.删 3.修改 4.清空 三:正反向的 ...
随机推荐
- python-获取本机mac地址
#!/usr/bin/env python #-*- coding:utf-8 -*- ############################ #File Name: getmac.py #Auth ...
- mount rootfs
主要用到的命令为pivot_root,可man 8 pivot_root了解用法. 1. pivot_root - change the root filesystem pivot_root new_ ...
- priority_queue优先队列/C++
priority_queue优先队列/C++ 概述 priority_queue是一个拥有权值观念的queue,只允许在底端加入元素,并从顶端取出元素. priority_queue带有权值观念,权值 ...
- BitMap、Geo、HyperLogLog
前言 Reids 在 Web 应用的开发中使用非常广泛,几乎所有的后端技术都会有涉及到 Redis 的使用.Redis 种除了常见的字符串 String.字典 Hash.列表 List.集合 Set. ...
- 第一百九十二节,jQuery EasyUI 使用
jQuery EasyUI 使用 学习要点: 1.引入必要的文件 2.加载 UI 组件的方式 3.使用 easyload.js 智能加载 4.Parser 解析器 本节课重点了解 EasyUI 的两种 ...
- Eclipse 首选项(Preferences)
Eclipse 首选项(Preferences) 设置首选项 该对话框可通过框架管理但是其他插件可以设置其他页面来管理首选项的配置. 我们可以通过 Window 菜单选择 Preferences 菜单 ...
- MySQL中的聚合函数
创建student表 CREATE TABLE IF NOT EXISTS `student` ( `id` int(4) unsigned NOT NULL AUTO_INCREMENT, `nam ...
- [HTML5&CSS3]Transform具体解释
Transform字面上就是变形,改变的意思. 在CSS3中transform主要包含以下几种:旋转rotate.扭曲skew.缩放scale和移动translate以及矩阵变形matrix.以下我们 ...
- spring-security+hibernate4+quartz实现的心跳检测项目(转 收藏)
转自:http://www.52itstyle.com/thread-27470-1-1.html HeartBeat. ~2 Z8 U! ?8 r心跳检测各类应用服务器(如Tomcat,Jetty) ...
- ehcache缓存框架简介(一)
EhCache 是一个纯Java的进程内缓存框架,具有快速.精干等特点,是Hibernate中默认的CacheProvider. 我们使用EhCache缓存框架主要是为了判断重复Url,每次爬取一个网 ...