X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=PLC%2FTable.py;h=236596588e644c7db1a1b7005d320aef09fe50b1;hb=HEAD;hp=3380ab5baf3ab2ef6908c95063ce66a79c1fdc33;hpb=dbb01d93a67bf3a8cb470e9ccb95f3f139651478;p=plcapi.git diff --git a/PLC/Table.py b/PLC/Table.py index 3380ab5..2365965 100644 --- a/PLC/Table.py +++ b/PLC/Table.py @@ -1,5 +1,3 @@ -# $Id$ -# $URL$ from types import StringTypes, IntType, LongType import time import calendar @@ -195,12 +193,13 @@ class Row(dict): for this object, and are not marked as a read-only Parameter. """ - if obj is None: obj = self + if obj is None: + obj = self db_fields = self.api.db.fields(self.table_name) - return dict ( [ (key,value) for (key,value) in obj.items() + return dict ( [ (key, value) for (key, value) in obj.items() if key in db_fields and - Row.is_writable(key,value,self.fields) ] ) + Row.is_writable(key, value, self.fields) ] ) def tag_fields (self, obj=None): """ @@ -353,11 +352,11 @@ class Row(dict): else: # Update existing row columns = ["%s = %s" % (key, value) for (key, value) in zip(keys, values)] - sql = "UPDATE %s SET " % self.table_name + \ - ", ".join(columns) + \ - " WHERE %s = %s" % \ - (self.primary_key, - self.api.db.param(self.primary_key, self[self.primary_key])) + sql = "UPDATE {} SET {} WHERE {} = {}"\ + .format(self.table_name, + ", ".join(columns), + self.primary_key, + self.api.db.param(self.primary_key, self[self.primary_key])) self.api.db.do(sql, db_fields)