Flask SQLAlchemy с Postgresql, автокоммит не работает без запроса после вставки записи - PullRequest
0 голосов
/ 14 апреля 2020

Я настроил соединение с БД в моем приложении flask следующим образом:

app.config['SQLALCHEMY_DATABASE_URI'] = conn_url
session_options = {
  'autocommit': True
}
db = SQLAlchemy(app, session_options=session_options)

На мой взгляд, код

req_body = request.json
db.session.add(XYZ(**req_body))

, где XYZ - это моя db.Model, делает не вставить запись в таблицу. Ни flu sh (), ни commit () из sqlalchemy не выполняются.

Но, добавление запроса после добавления сбрасывает изменения сеанса в БД и вставляет запись.

req_body = request.json
db.session.add(XYZ(**req_body))
XYZ.query.all()

Я не думаю, что это желаемое поведение при включенной автоматической фиксации. Кто-то может прокомментировать это или сообщить мне, если я что-то здесь упускаю?

Заранее спасибо!

...