[Fixed]-Django: Difference between save() and create() from transaction perspective


As you’ve probably seen, create() is just a wrapper for save():

The _for_write part is most probably meant only for database selection, so I wouldn’t pay too much attention to it.

And regarding that “transaction aborted” error, without seeing your code it’s hard to say what the problem is. Maybe you e.g. violated UNIQUE constraint with create(), which causes PostgreSQL to demand transaction rollback, and then you tried save() with different data – it’s hard to tell without the exact code.

Leave a comment