网站平台建设设备清单,什么是百度竞价排名服务,志鸿优化设计答案网,wordpress the termsModel和Meta 概念ModelMetaModel支持的字段类型Meta 属性例子 概念
就是对象的意思#xff0c;底层一个Model对应一张表#xff0c;而Meta是Model的内部类#xff0c;是用来描述Model和数据库表的相关元数据信息#xff0c;比如主键#xff0c;排序#xff0c;unique_ke… Model和Meta 概念ModelMetaModel支持的字段类型Meta 属性例子 概念
就是对象的意思底层一个Model对应一张表而Meta是Model的内部类是用来描述Model和数据库表的相关元数据信息比如主键排序unique_key 的。 也不是啥新鲜的概念。
Model
所有自定义的模型都要继承django.db.models
Meta
Meta是你定义的模型的内部类没啥稀奇的。
Model支持的字段类型
为了方便。Model到数据库都定义好了字段类型这算是一种映射概念也没啥稀奇的。 AutoField: 自增id VooleanField: true/false 数据库存的是数字模型映射为True/False CharField: varchar类型 DateField:Date 日期【2023-10-01】 DateTimeField: 日期时间【2023-10-01 23:10:33】 IntergerField: int TextField: 对应数据库text TimeField:对应数据库Time [23:12:10] FloatField: 对应数据库Double FileField: 对应数据库varChar ImageField:对应数据库varChar DecumalField:对应数据库Decimal
Meta 属性
db_table: 值类型字符串-对应生成的数据库表名 manager:值类型 boolean -是否还由Django管理生命周期 ordering: 值类型 列表-排序字段前加’-’ 表示降序 index_together:值类型列表中放元组表示唯一键 unique_together:值类型列表中放元组表示唯一键
例子
class DwDatabaseAssetItemPwMap(models.Model):id models.CharField(primary_keyTrue)asset_item_id models.IntegerField(资产项id)asset_item_name models.CharField(资产项名称, max_length128, blankTrue, nullTrue)name models.CharField(服务器名, max_length255)instance_id models.CharField(实例id, max_length128, blankTrue, nullTrue)region models.CharField(区域, max_length255, blankTrue, nullTrue)dw_server_id models.IntegerField(dw服务器id)project models.ForeignKey(Project, on_deletemodels.CASCADE, verbose_name项目)public_ip models.CharField(公网ip, max_length255, blankTrue, nullTrue)local_ip models.CharField(内网ip, max_length255, blankTrue, nullTrue)port models.IntegerField(端口)asset_item_pw_id models.IntegerField(密码id, nullTrue)username models.CharField(账号, max_length99)password AesEncryptedCharField(verbose_name密码, max_length255)asset_id models.IntegerField(资产项id, nullTrue)class Meta:app_label test_tablemanaged Falsedb_table dw_sink_database_asset_item_pw_mapunique_together ((asset_item_id, dw_server_id, asset_item_pw_id,))