From 6fff0f5eee3fd36a06a991de1f0d967f7a3a5f1b Mon Sep 17 00:00:00 2001 From: mdipierro Date: Thu, 27 Sep 2012 22:15:56 -0500 Subject: [PATCH] fixed many bugs in dal, thanks Mart Senecal --- VERSION | 2 +- gluon/dal.py | 14 ++++++++------ 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/VERSION b/VERSION index 81a9d995..23bd2df5 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -Version 2.0.9 (2012-09-27 22:09:19) stable +Version 2.0.9 (2012-09-27 22:15:52) stable diff --git a/gluon/dal.py b/gluon/dal.py index 0340eebd..43f2e783 100644 --- a/gluon/dal.py +++ b/gluon/dal.py @@ -3207,8 +3207,7 @@ class SybaseAdapter(MSSQLAdapter): dsn = 'sybase:host=%s:%s;dbname=%s' % (host,port,db) driver_args.update(user = credential_decoder(user), - password = credential_decoder(password), - locale = charset) + password = credential_decoder(password)) def connect(dsn=dsn,driver_args=driver_args): return self.driver.connect(dsn,**driver_args) @@ -4260,7 +4259,7 @@ class GoogleDatastoreAdapter(NoSQLAdapter): def create_table(self,table,migrate=True,fake_migrate=False, polymodel=None): myfields = {} for field in table: - if isinstance(polymodel,Table) and k in polymodel.fields(): + if isinstance(polymodel,Table) and field.name in polymodel.fields(): continue attr = {} field_type = field.type @@ -6863,9 +6862,9 @@ def index(): patterns.append(tag+'/:field') if depth>0: for f in db[table]._referenced_by: - tag+='/%s[%s.%s]' % (rtable,f.tablename,f.name) + tag+='/%s[%s.%s]' % (table,f.tablename,f.name) patterns.append(tag) - patterns += auto_table(rtable,base=tag,depth=depth-1) + patterns += auto_table(table,base=tag,depth=depth-1) return patterns if patterns==DEFAULT: @@ -9208,7 +9207,10 @@ class Rows(object): if have_serializers: return serializers.json(items,default=default or serializers.custom_json) else: - import simplejson + try: + import json as simplejson + except ImportError: + import gluon.contrib.simplejson as simplejson return simplejson.dumps(items) def Rows_unpickler(data):