随笔 - 34  文章 - 0  评论 - 0  阅读 - 5666

通过字段名获取数据模型对象具有选择属性的显式值 

.....
 
for obj in queryset: # 遍历选择的对象列表
data=[]
for field in fields_columns:#  fields_columns为选定的字段列表
if obj._meta.get_field(field).choices: #如果字段 有choices属性
data.append(eval('obj.get_'+field+'_display()'))
elif '_id' in field: #是否多对一外键  字段名=属性名+'_id' 
data.append(f'{getattr(obj,field[:-3])}') #多对一 访问模型类的属性(字段名去掉'_id') 返回关联模型对象的返回值。需转换为字符后才能to excel.
else:
data.append(f'{getattr(obj, field)}')#将字段转换为字符(如:img类型无法转为exel)
....
posted on   ldx-wsj  阅读(28)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示