Как обновить строку таблицы с помощью SQLAlchemy? - PullRequest
2 голосов
/ 10 марта 2012

Я хочу обновить строку таблицы.

Чтобы добавить, я использовал,

session.add(unit) #here unit is unit object of class unit
session.commit()

Чтобы обновить, я пытался,

session.merge(unit)
session.commit()

Однако, вВ базе данных есть другие столбцы, например, create_by, created_on, updated_on, которые не заданы в объекте объекта, поэтому при слиянии они устанавливаются в NULL.

Ответы [ 2 ]

4 голосов
/ 15 июля 2013

Вы можете просто изменить свойства класса, который вы используете для представления строки, и вызвать session.commit(). Например:

# Add a new user
user = User(name="John", age=20)
session.add(user)
session.commit()

# Modify the user we just added
user.age = 21
session.commit()
0 голосов
/ 11 марта 2012

Я использовал слияние (единицу измерения), изменив структуру модели. Инициализация create_by, create_on, updated_on и т. Д. Удалена из конструктора init (...)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...