Unsupported operand type(s) for +
Используется flask, sqlalchemy Выбираю наибольший id из бд и потом увеличиваю на 1
max_id = db.session.query(func.max(User.id)).scalar()
id = max_id + 1
В ответ получаю ошибку:
TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'
если в консоли python сделать тоже самое, работает нормально если проверить например
max_id = db.session.query(func.max(User.id)).scalar()
type(max_id) == int
true
Кстати,на локальном сервере работает, на рабочем, нелокальном не работает Что не так? Почему не хочет прибавлять?
Ответы (1 шт):
Автор решения: SmellyNS
→ Ссылка
db.session.query возвращает None.
Когда вы пытаетесь прибавить к нему единицу, возникает операция None + int, которая и дропает вам вашу ошибку.
Проверяйте корректность инициализации session. Проще говоря, связь с базой данных, существование нужных сущностей и атрибутов и т.д.