2017-02-21 124 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