every http request works like this: try: run all models run controller function run view commit all open trasactions except: rollback all open transactions
So in models, controllers and views only you need to db.commit() if you want to commit despite possible uncaught exceptions later in the same actions. If you use DAL in a script you always need to do db.commit() On Feb 12, 4:19 pm, Dane <dane.schnei...@gmail.com> wrote: > Hello, wondering if someone could clarify when it's unnecessary to > call db.commit()? I've noticed it is needed when doing inserts from > the console, but it seems to be implicit in controller functions? Just > looking for some quick clarification on this. Thanks!