Я работаю в Swagger с приложением Flask.В этом я пытаюсь создать ответ API.Итак, я попробовал следующие вещи.
У меня есть таблица с 15 столбцами.Я просто хотел выбрать только определенные столбцы из таблицы.Поэтому я использовал with_entities()
из sqlalchemy, как показано ниже.
dbobject.query.with_entities(dbobject.id, dbobject.name, dbobject.version)
Он возвращает доступные строки из таблицы в этом формате для всех строк (21, asset21, 9898)
, но не как кортеж с ключами.Также row.__table__.columns.keys()
не работает, когда я пытался получить имена столбцов для выбранных строк из возвращенных строк вышеупомянутого запроса.Это просто заканчивается приведенной ниже ошибкой
for col in row.__table__.columns.keys() if col != 'id')
AttributeError: 'result' object has no attribute '__table__'
Но row.__table__.columns.keys()
тот же фрагмент работает, когда я выбираю все столбцы из таблицы dbobject.query.all()
Любая конкретная причина, почему он не работает дляwith_entities