From 059167015c1ef18a8ce862554811596fa970a1cf Mon Sep 17 00:00:00 2001 From: Tony Mack Date: Fri, 11 Sep 2009 20:16:56 +0000 Subject: [PATCH] insert() returns record_id now. in update/insert filter fileds based on GeniRecord.all_fields instead of GeniRecord.fields --- sfa/util/genitable.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/sfa/util/genitable.py b/sfa/util/genitable.py index f3cc2ce1..a6c6c9f8 100644 --- a/sfa/util/genitable.py +++ b/sfa/util/genitable.py @@ -74,19 +74,20 @@ class GeniTable(list): self.cnx.query(query_str) def insert(self, record): - dont_insert = ['date_created', 'last_updated'] - fields = [field for field in record.fields.keys() if field not in dont_insert] - fieldnames = ["pointer"] + fields + dont_insert = ['date_created', 'last_updated', 'record_id'] + fieldnames = [field for field in record.all_fields.keys() if field not in dont_insert] fieldvals = record.get_field_value_strings(fieldnames) query_str = "INSERT INTO " + self.tablename + \ "(" + ",".join(fieldnames) + ") " + \ "VALUES(" + ",".join(fieldvals) + ")" #print query_str self.cnx.query(query_str) + results = self.find(record) + return results[0]['record_id'] def update(self, record): - dont_update = ['date_created', 'last_updated'] - fields = [field for field in record.fields.keys() if field not in dont_update] + dont_update = ['date_created', 'last_updated', 'record_id'] + fields = [field for field in record.all_fields.keys() if field not in dont_update] fieldvals = record.get_field_value_strings(fields) pairs = [] for field in fields: @@ -96,7 +97,6 @@ class GeniTable(list): query_str = "UPDATE %s SET %s WHERE record_id = %s" % \ (self.tablename, update, record['record_id']) - #print query_str self.cnx.query(query_str) def quote(self, value): -- 2.47.0