Я использую Python 3 и SQLAlchemy, и мой вопрос заключается в том, можно ли каким-то образом получить значение столбца определенного пользователя (символ в моем случае) в одном запросе (возможно, используя column.name)?
Прямо сейчас у меня есть способ сделать это.
character = session.query(Character).filter_by(id=1).first()
print(character.level)
>>> 10
То, что я хочу сделать - это что-то вроде этого, когда я не знаю, какое значение столбца я хочу:
character = session.query(Character).filter_by(id=1).first()
for i, column in enumerate(character.__table__.columns):
if i == 3:
#Not sure about this query
someColumnValue = session.query(character).load_only(column.name)
# Lets say its the level column
someColumnValue += 1
session.commit()
#And the character.level will now be 10 + 1 stored in the database
print(someColumnValue)
>>> 11
Может быть, теперь есть способ сделать это, или, может быть, есть более разумный способ получить мой результат, может быть, итерация другим способом или около того.