# HG changeset patch # User jbe # Date 1307708615 -7200 # Node ID 791849c58105fa5a8cce0cc8995b329f34a01498 # Parent 8026a033059833f10170c0739743cc1716acd4c5 class_prototype.object:try_save() can create rows with DEFAULT VALUES diff -r 8026a0330598 -r 791849c58105 libraries/mondelefant/mondelefant.lua --- a/libraries/mondelefant/mondelefant.lua Mon Nov 08 01:55:31 2010 +0100 +++ b/libraries/mondelefant/mondelefant.lua Fri Jun 10 14:23:35 2011 +0200 @@ -1116,16 +1116,28 @@ end self.id = db_result2.id else - local db_error, db_result = self._connection:try_query( - { - 'INSERT INTO $ ($) VALUES ($) RETURNING ($)', - {self._class:get_qualified_table()}, - fields, - values, - primary_key_sql - }, - "object" - ) + local db_error, db_result + if #fields == 0 then + db_error, db_result = self._connection:try_query( + { + 'INSERT INTO $ DEFAULT VALUES RETURNING ($)', + {self._class:get_qualified_table()}, + primary_key_sql + }, + "object" + ) + else + db_error, db_result = self._connection:try_query( + { + 'INSERT INTO $ ($) VALUES ($) RETURNING ($)', + {self._class:get_qualified_table()}, + fields, + values, + primary_key_sql + }, + "object" + ) + end if db_error then return db_error end