#python #sqlalchemy
#python #sqlalchemy
Вопрос:
Я хочу напрямую обновить свой класс sqlalchemy, а затем вставить изменения в базу данных и вернуть идентификатор, который был недавно вставлен. Ниже приведен код, который я пытаюсь заставить работать.
Series.is_forfeited = is_forfeited
Series.start_date_time =date_time
Series.is_finished = is_finished
Series.is_live = is_live
instance = 'Convert newly updated object to instance'
session.add(instance)
session.commit()
id = instance.id
Ответ №1:
Похоже, вы не инициализируете свой экземпляр. Попробуйте это:
instance = Series()
instance.is_forfeited = is_forfeited
instance.start_date_time =date_time
instance.is_finished = is_finished
instance.is_live = is_live
session.add(instance)
# optional: flush before you commit to get the ID without
# closing the transaction
session.flush()
# also, don't use the variable name `id` as
# id is a builtin function and you're overriding it.
my_id = instance.id
# when you're ready, you can commit your transaction
session.commit()