как перебирать объект сущности ponyorm
Я использую ponyORM и делаю запрос к PeopleModel " например:
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,
1 ответ:
Результатом функции
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)