使用bigIntegerField添加多个布尔特性的自定义字段。
django-bigfeat的Python项目详细描述
django bigfeat是一个自定义字段,可以使用bigingerfield添加多达63个布尔特性。
快速启动
fromdjango.dbimportmodelsfrombigfeatimportBigFeatFieldclassModelWithOptionalFeatures(models.Model):FEATURES={'FEATURE_1':0x0000000000000001,'FEATURE_2':0x0000000000000002,'FEATURE_3':0x0000000000000004,'FEATURE_4':0x0000000000000008,...'FEATURE_61':0x1000000000000000,'FEATURE_62':0x2000000000000000,'FEATURE_63':0x4000000000000000,}features=BigFeatField(masks=FEATURES)m=ModelWithOptionalFeatures.objects.get(id=1)printm.features.feature_1ifm.features.feature_2:printm.features.feature_3ifm.features.feature_4elsem.features.feature_5printm.features
注释
无法使用最高有效位(0x80000000000000),因为 bigIntegerField存储为有符号整数,将导致溢出错误