设置外键

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的更多相关文章

  1. django admin编辑被外键关联的主表时支持显示字表记录

    假设有模型 class A(models.Model): name = models.CharField() class B(models.Model): name = models.CharFiel ...

  2. 【Python】django模型models的外键关联使用

    Python 2.7.10,django 1.8.6 外键关联:http://www.bubuko.com/infodetail-618303.html 字段属性:http://www.cnblogs ...

  3. django开发中关于外键设置

    django开发中关于外键设置 我们建模型的时候会用到ForeignKey 而由于外键的约数会导致一些保存 所有我们ctrl+左键进入源码 源码 def __init__(self, to, on_d ...

  4. Django学习——Django测试环境搭建、单表查询关键字、神奇的双下划线查询(范围查询)、图书管理系统表设计、外键字段操作、跨表查询理论、基于对象的跨表查询、基于双下划线的跨表查询

    Django测试环境搭建 ps: 1.pycharm连接数据库都需要提前下载对应的驱动 2.自带的sqlite3对日期格式数据不敏感 如果后续业务需要使用日期辅助筛选数据那么不推荐使用sqlite3 ...

  5. Django学习手册 - ORM 外键

    Django 外键创建 关键语法: models.ForeignKey("UserGroup",to_field="gid",default=1,on_dele ...

  6. Django 中跨 app 创建外键、多对多引用的方法

    问题描述 我的 Django 项目中有两个 app. 在 PersonalCenter app下的 models.py 下定义了一个 Footprint 类: 在 LoginAndRegister a ...

  7. python django中的orm外键级联删除

    今天添加了一个路由表,路由表做外键,然后添加了几个组,路由表为组的外键,当我使用删除功能对路由表进行删除时,竞然将我的组也相当的删除了:尽管这是测试,但放到生产环境中还是会发生意外的:这个问题要解决: ...

  8. Django(15)外键和表关系

    外键删除操作 如果一个模型使用了外键.那么在对方那个模型被删掉后,该进行什么样的操作.可以通过on_delete来指定.可以指定的类型如下: CASCADE:级联操作.如果外键对应的那条数据被删除了, ...

  9. Django框架表关系外键-多对多外键(增删改查)-正反向的概率-多表查询(子查询与联表查询)

    目录 一:表关系外键 1.提前创建表关系 2.目前只剩 书籍表和 书籍作者表没创建信息. 3.增 4.删 5.修改 二:多对多外键增删改查 1.给书籍绑定作者 2.删 3.修改 4.清空 三:正反向的 ...

随机推荐

  1. Python内置函数之all()

    all()函数返回值不是True就是False. 它只能传入一个参数,而且参数必须是可迭代对象,换句话说,参数不是元组就是列表(通常情况下). all()中的可迭代对象所有元素值为True或者不包含元 ...

  2. iOS使用AVCaptureSession自定义相机

    关于iOS调用摄像机来获取照片,通常我们都会调用UIImagePickerController来调用系统提供的相机来拍照,这个控件非常好 用.但是有时UIImagePickerController控件 ...

  3. 设计模式中类的关系之组合关系(Composition)

    组合也是关联关系的一种特例,它体现的是一种contains-a的关系,这种关系比聚合更强,也称为强聚合:它同样体现整体与部分间的关系,但此时整体与部分是不可分的,它们具有统一的生存期,整体的生命周期结 ...

  4. Vsphere笔记07 Vcenter 部署流程 2

    7.Vcenter 部署流程 2   Vcenter 安装需求   1.硬件要求 CPU:支持VT-X技术并开启内存:4G或4G 以上   2.系统要求 Windows 2008 R2 x64 Vsp ...

  5. 挂载samb目录

    不管是ubuntu还是fedora文件管理器都带有挂载浏览smb目录的工具,但是我却找不到它的挂载点,所以想用命令行拷贝东西就没办法了,还是需要使用传统的挂载方式, mount -t cifs -o ...

  6. Eclipse 内置浏览器

    Web 浏览器 Eclipse 系统内部自带了浏览器,该浏览器可以通过点击 Window 菜单并选择 Show View > Other,在弹出来的对话框的搜索栏中输入 "browse ...

  7. Mysql事务-隔离级别

    MYSQL事务-隔离级别 事务是什么? 事务简言之就是一组SQL执行要么全部成功,要么全部失败.MYSQL的事务在存储引擎层实现. 事务都有ACID特性: 原子性(Atomicity):一个事务必须被 ...

  8. oracle高水位

    oracle高水位http://www.cnblogs.com/chuyuhuashi/p/3548260.htmlhttp://blog.csdn.net/wyzxg/article/details ...

  9. 【OC学习-13】什么是组合,它和继承是什么关系?

    继承有两缺点:(1)当层级越来越多时,假如每一个层级都有实例变量,那么最下层的子类继承的实例变量会超级多,沉重.(2)当消息传递自子类往上时.层级越多,效率越低下. 所以就有了组合.说实话区分继承和组 ...

  10. 头一次玩博客,记录下我的java之路吧

    今天写了简单的后台管理系统,发现光靠脑子记住知识真的很难,笔记本不好翻,之前写的代码更难找,所以写写博客,记录一些知识,为了以后上班用得到.