Django 中模型类的属性字段命名有两个限制:
首先,你不能使用Python的保留字段作为模型的属性字段。比如下面的定义是不合法的:
上面的代码中pass是Python的关键字,他有特殊的含义因此不能作为属性字段。
其次,字段中不能保护双下划线,比如下面的代码是不合法的:
其中foo__bar的命名是不合法的,因为对于其中的__双下划线,在Django中是作为查询语法的一部分。除此之外没有其他限制,你甚至可以使用SQL关键字作为字段名,因为Django在生成数据库表的时候会加上相应的前缀,所以不会有冲突。