查询对象不使用动态列名

时间:2013-11-18 11:14:00

标签: python django

qs_new  = MODEl_NAME.objects.all()
j=1
for query_value in qs_new:
    k=0

    for field in model_obj._meta.fields:                        
        fieldname = field.get_attname_column()
        ws.write(0, k, fieldname[0])                   
        ws.write(j, k, query_value.fieldname[1])
        k= k +1

j=j+1
query_value.fieldname[1]出现

错误,如果我将query_value.first_name置于正常状态。 这有什么问题(query_value.filedname[1])?

1 个答案:

答案 0 :(得分:0)

使用getattr() function动态查找属性:

ws.write(j, k, getattr(query_value, fieldname[1]))

getattr()将在对象fieldname[1]上查找query_value中指定的属性。