python django modal 数据查询统一接口
通过建立数据表与字段的关联关系表,使用统计接口可以进行所有数据表的查询
包含:多字段查询、模糊查询、排序、分页等
1、modal
class TableElements(models.Model):
"""
:数据表与字段关系表
"""
class Meta:
db_table = 'SYMG_TABL_ELEM_TAB'
table_name = models.CharField(u'表名', max_length=100, null=True)
modal_name = models.CharField(u'modal名称', max_length=100, null=True)
chinese_name = models.CharField(u'中文名称', max_length=100, null=True)
ele_code = models.CharField(u'字段编码', max_length=100, null=True)
ele_name = models.CharField(u'字段名称', max_length=100, null=True)
must_ele = models.CharField(u'是否必填字段',max_length=1,null=True)
search_ele = models.CharField(u'是否模糊查询字段',max_length=1,null=True)
note = models.CharField(u'备注',max_length=100,null=True) # 备注
status = models.CharField(u'审计标识',max_length=1,null=True) # 审计标识,i 添加,d 已删除
update_time = models.DateTimeField(u'记录操作时间',max_length=15, null=True) # 记录操作时间
2、查询接口代码
class QueryDataInfoAPI(APIView):
"""
:数据表管理——数据查询统一接口API
"""
def process(self, data):
"""
:params table_name 表名
:params ele_list 查询字段
:params pageNumber 页数
:params pageSize 每页行数
:params sort 排序字段—(升序:字段名,降序:-字段名
:params where 模糊查询条件
:params otherwhere 其他查询条件 = {}
"""
try:
table_name = data.get('table_name') # 数据表名
ele_list = data.get('ele_list') # 查询字段列表
otherwhere = data.get('otherwhere') # 其他查询条件
where = data.get('where') # 模糊查询