X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=sfa%2Futil%2Fgenitable.py;h=80a4ddab16da6dd77bbda878336059e405a9ddaa;hb=ad2502fe33259cf1b23be45d4980f81bb8d8c919;hp=457d36bb8baecd32568b195607197817b3fbe49d;hpb=f4223c447faba549f161d861ae8d3c99d7a3509b;p=sfa.git diff --git a/sfa/util/genitable.py b/sfa/util/genitable.py index 457d36bb..80a4ddab 100644 --- a/sfa/util/genitable.py +++ b/sfa/util/genitable.py @@ -124,6 +124,9 @@ class GeniTable(list): self.db.do(query_str, db_fields) self.db.commit() + def quote_string(self, value): + return str(self.quote(value)) + def quote(self, value): """ Returns quoted version of the specified value. @@ -132,13 +135,15 @@ class GeniTable(list): # The pgdb._quote function is good enough for general SQL # quoting, except for array types. if isinstance(value, (list, tuple, set)): - return "ARRAY[%s]" % ", ".join(map, self.quote, value) + return "ARRAY[%s]" % ", ".join(map, self.quote_string, value) else: return pgdb._quote(value) def find(self, record_filter = None, columns=None): if not columns: columns = "*" + else: + columns = ",".join(columns) sql = "SELECT %s FROM %s WHERE True " % (columns, self.tablename) if isinstance(record_filter, (list, tuple, set)): @@ -161,9 +166,9 @@ class GeniTable(list): results = [results] return results - def findObjects(self, record_filter = None): + def findObjects(self, record_filter = None, columns=None): - results = self.find(record_filter) + results = self.find(record_filter, columns) result_rec_list = [] for result in results: if result['type'] in ['authority']: