Django

Code

Changeset 5508

Show
Ignore:
Timestamp:
06/21/07 11:46:23 (1 year ago)
Author:
ubernostrum
Message:

0.91-bugfixes: Fixed #4651; UnicodeCursorWrapper? should work with dictionaries of parameters now

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • django/branches/0.91-bugfixes/django/core/db/backends/postgresql.py

    r4453 r5508  
    3737 
    3838    def execute(self, sql, params=()): 
    39         return self.cursor.execute(sql, [smart_basestring(p, self.charset) for p in params]) 
     39        try: 
     40            params = dict([(k, smart_basestring(v, self.charset)) for (k, v) in params.items()]) 
     41        except AttributeError: 
     42            params = [smart_basestring(p, self.charset) for p in params] 
     43        return self.cursor.execute(sql, params) 
    4044 
    4145    def executemany(self, sql, param_list): 
    42         new_param_list = [tuple([smart_basestring(p, self.charset) for p in params]) for params in param_list] 
     46        try: 
     47            new_param_list = [dict([(k, smart_basestring(v, self.charset)) for (k, v) in params.items()]) 
     48                              for params in param_list] 
     49        except AttributeError: 
     50            new_param_list = [tuple([smart_basestring(p, self.charset) for p in params]) 
     51                              for params in param_list] 
    4352        return self.cursor.executemany(sql, new_param_list) 
    4453