2017-02-21 115 views
2

我使用ponyORM我可以把查询到PeopleModel”例如:如何遍历ponyorm实体对象

first_name = "avi" 
sqlObject = select(p for p in PeopleModel if raw_sql('(lower(first_name) = lower($first_name)) 

SQLObject的对象返回PeopleModel列表预期和其完美的 现在我想。打印所有PeopleModel价值观,我希望类似的东西的工作:

for people_model_key,people_model_value in sqlObject.items(): 
    print(people_model_value) 

但它不工作..

我怎么能打印所有people_model值? 谢谢你多用vert,

回答

2

select函数的结果是一个查询对象:

first_name = "avi" 
people = select(p for p in PeopleModel 
       if raw_sql('(lower(first_name) = lower($first_name)) 

这不是一本字典,所以它没有items方法。如果你迭代它,你会得到对象。您可以访问对象的属性,在通常的方式:

for person in people: 
    print('name:', person.name) 
    print('age:', person.age) 

如果你想对象转换为一个字典,你可以使用to_dict方法:

for person in people: 
    for key, value in person.to_dict().items(): 
     print(key, value) 
+0

感谢。 to_dict()的作品 – Yan