设置django orm 模型中的字段限制数值的大小

需求如下:

1:使用了django框架中的orm模式来创建数据表

2:限制字段的取值范围

python 复制代码
# --------------------  
# 因为django的orm没有限制整形字段的取值范围,所以需要django内置的值校验器进行校验  
from django.core.validators import MinValueValidator,MaxValueValidator  
# --------------------
class UserProfile(models.Model):  
    # ------------------------  
  
    # 选择部门时,为何不使用多对多的字段:因为使用了多对多,在选择时是允许选择多个外键,但是admin后台显示中展示这个字段,无法显示多个部门  
    # 所以在部门信息模型中添加上部门managers字段,表示是谁管理的部门  
  
  
    # ------------------------  
    # 用户模型中 当创建或删除时,将会关联删除  
    user=models.OneToOneField(User,on_delete=models.CASCADE,verbose_name="当前用户名")  
  
    # 新添加字段  
    RANK_USER=( ('普通销售', '普通销售'), ('市级经理', '市级经理'), ('区域经理', '区域经理'), ('总经理', '总经理'), ('财务', '财务'),('投流手', '投流手'))  
    # validators=[MaxValueValidator(1),MaxValueValidator(7)] 值校验器,限制为最小值1,最大值7  
    userrank = models.IntegerField(default=7, blank=True, verbose_name='用户在企业在的职级',validators=[MinValueValidator(1),MaxValueValidator(7)]  
                                   ,help_text="1全国性总经理,2省部门经理,3市级经理,,4财务,5小组组长,6投流人,7普通职员,请必须标记,经理查看成员需按照该职级")
相关推荐
workflower36 分钟前
软件压力测试
数据库·压力测试·需求分析·个人开发·极限编程·结对编程
2501_941111821 小时前
使用Scikit-learn进行机器学习模型评估
jvm·数据库·python
爬山算法1 小时前
Redis(128)Redis的跳表(Skip List)是如何实现的?
数据库·redis·list
a***13141 小时前
保姆级JavaWeb项目创建、部署、连接数据库(tomcat)
数据库·tomcat·firefox
z***75151 小时前
PostgreSQL 查看数据库及表中数据占用空间大小
数据库·postgresql·oracle
Wang's Blog2 小时前
MySQL: 安装MySQL示例数据库Sakila的完整流程与技术要点
数据库·mysql
Unstoppable222 小时前
八股训练营第 20 天 | MySQL和Redis的区别是什么?Redis有什么优缺点、为什么用Redis查询会比较快?
数据库·redis·mysql·八股
kka杰2 小时前
MYSQL结构操作DDL指令2.表操作
数据库·mysql
曾经的三心草2 小时前
Mysql
数据库·mysql·oracle
河铃旅鹿2 小时前
Android开发-java版:SQLite数据库
android·数据库·笔记·学习·sqlite