fixed appadmin.py with ignore_common_filters, thanks Yair

This commit is contained in:
Massimo Di Pierro
2011-12-06 17:00:04 -06:00
parent 092ac2fdd4
commit 5a5113e10a
5 changed files with 25 additions and 27 deletions
+1 -1
View File
@@ -1 +1 @@
Version 1.99.3 (2011-12-06 08:28:04) dev Version 1.99.3 (2011-12-06 16:59:36) dev
+5 -6
View File
@@ -150,7 +150,7 @@ def csv():
return None return None
response.headers['Content-disposition'] = 'attachment; filename=%s_%s.csv'\ response.headers['Content-disposition'] = 'attachment; filename=%s_%s.csv'\
% tuple(request.vars.query.split('.')[:2]) % tuple(request.vars.query.split('.')[:2])
return str(db(query).select(ignore_common_filter=True)) return str(db(query,ignore_common_filters=True).select())
def import_csv(table, file): def import_csv(table, file):
@@ -225,10 +225,9 @@ def select():
response.flash = T('%s rows deleted', nrows) response.flash = T('%s rows deleted', nrows)
nrows = db(query).count() nrows = db(query).count()
if orderby: if orderby:
rows = db(query).select(limitby=(start, stop),ignore_common_filter=True, rows = db(query,ignore_common_filters=True).select(limitby=(start, stop), orderby=eval_in_global_env(orderby))
orderby=eval_in_global_env(orderby))
else: else:
rows = db(query).select(limitby=(start, stop), ignore_common_filter=True) rows = db(query,ignore_common_filters=True).select(limitby=(start, stop))
except Exception, e: except Exception, e:
(rows, nrows) = ([], 0) (rows, nrows) = ([], 0)
response.flash = DIV(T('Invalid Query'),PRE(str(e))) response.flash = DIV(T('Invalid Query'),PRE(str(e)))
@@ -255,9 +254,9 @@ def update():
if keyed: if keyed:
key = [f for f in request.vars if f in db[table]._primarykey] key = [f for f in request.vars if f in db[table]._primarykey]
if key: if key:
record = db(db[table][key[0]] == request.vars[key[0]]).select(ignore_common_filter=True).first() record = db(db[table][key[0]] == request.vars[key[0]], ignore_common_filters=True).select().first()
else: else:
record = db(db[table].id == request.args(2)).select(ignore_common_filter=True).first() record = db(db[table].id == request.args(2),ignore_common_filters=True).select().first()
if not record: if not record:
qry = query_by_table_type(table, db) qry = query_by_table_type(table, db)
@@ -150,7 +150,7 @@ def csv():
return None return None
response.headers['Content-disposition'] = 'attachment; filename=%s_%s.csv'\ response.headers['Content-disposition'] = 'attachment; filename=%s_%s.csv'\
% tuple(request.vars.query.split('.')[:2]) % tuple(request.vars.query.split('.')[:2])
return str(db(query).select(ignore_common_filter=True)) return str(db(query,ignore_common_filters=True).select())
def import_csv(table, file): def import_csv(table, file):
@@ -225,10 +225,9 @@ def select():
response.flash = T('%s rows deleted', nrows) response.flash = T('%s rows deleted', nrows)
nrows = db(query).count() nrows = db(query).count()
if orderby: if orderby:
rows = db(query).select(limitby=(start, stop),ignore_common_filter=True, rows = db(query,ignore_common_filters=True).select(limitby=(start, stop), orderby=eval_in_global_env(orderby))
orderby=eval_in_global_env(orderby))
else: else:
rows = db(query).select(limitby=(start, stop), ignore_common_filter=True) rows = db(query,ignore_common_filters=True).select(limitby=(start, stop))
except Exception, e: except Exception, e:
(rows, nrows) = ([], 0) (rows, nrows) = ([], 0)
response.flash = DIV(T('Invalid Query'),PRE(str(e))) response.flash = DIV(T('Invalid Query'),PRE(str(e)))
@@ -255,9 +254,9 @@ def update():
if keyed: if keyed:
key = [f for f in request.vars if f in db[table]._primarykey] key = [f for f in request.vars if f in db[table]._primarykey]
if key: if key:
record = db(db[table][key[0]] == request.vars[key[0]]).select(ignore_common_filter=True).first() record = db(db[table][key[0]] == request.vars[key[0]], ignore_common_filters=True).select().first()
else: else:
record = db(db[table].id == request.args(2)).select(ignore_common_filter=True).first() record = db(db[table].id == request.args(2),ignore_common_filters=True).select().first()
if not record: if not record:
qry = query_by_table_type(table, db) qry = query_by_table_type(table, db)
+5 -6
View File
@@ -150,7 +150,7 @@ def csv():
return None return None
response.headers['Content-disposition'] = 'attachment; filename=%s_%s.csv'\ response.headers['Content-disposition'] = 'attachment; filename=%s_%s.csv'\
% tuple(request.vars.query.split('.')[:2]) % tuple(request.vars.query.split('.')[:2])
return str(db(query).select(ignore_common_filter=True)) return str(db(query,ignore_common_filters=True).select())
def import_csv(table, file): def import_csv(table, file):
@@ -225,10 +225,9 @@ def select():
response.flash = T('%s rows deleted', nrows) response.flash = T('%s rows deleted', nrows)
nrows = db(query).count() nrows = db(query).count()
if orderby: if orderby:
rows = db(query).select(limitby=(start, stop),ignore_common_filter=True, rows = db(query,ignore_common_filters=True).select(limitby=(start, stop), orderby=eval_in_global_env(orderby))
orderby=eval_in_global_env(orderby))
else: else:
rows = db(query).select(limitby=(start, stop), ignore_common_filter=True) rows = db(query,ignore_common_filters=True).select(limitby=(start, stop))
except Exception, e: except Exception, e:
(rows, nrows) = ([], 0) (rows, nrows) = ([], 0)
response.flash = DIV(T('Invalid Query'),PRE(str(e))) response.flash = DIV(T('Invalid Query'),PRE(str(e)))
@@ -255,9 +254,9 @@ def update():
if keyed: if keyed:
key = [f for f in request.vars if f in db[table]._primarykey] key = [f for f in request.vars if f in db[table]._primarykey]
if key: if key:
record = db(db[table][key[0]] == request.vars[key[0]]).select(ignore_common_filter=True).first() record = db(db[table][key[0]] == request.vars[key[0]], ignore_common_filters=True).select().first()
else: else:
record = db(db[table].id == request.args(2)).select(ignore_common_filter=True).first() record = db(db[table].id == request.args(2),ignore_common_filters=True).select().first()
if not record: if not record:
qry = query_by_table_type(table, db) qry = query_by_table_type(table, db)
+9 -8
View File
@@ -9,13 +9,13 @@ import threading
# Install the new import function: # Install the new import function:
def custom_import_install(web2py_path): def custom_import_install(web2py_path):
global _web2py_importer global _web2py_importer
global _web2py_path global _web2py_path
if isinstance(__builtin__.__import__, _Web2pyImporter): if isinstance(__builtin__.__import__, _Web2pyImporter):
return #aready installed return #aready installed
_web2py_path = web2py_path _web2py_path = web2py_path
_web2py_importer = _Web2pyImporter(web2py_path) _web2py_importer = _Web2pyImporter(web2py_path)
__builtin__.__import__ = _web2py_importer __builtin__.__import__ = _web2py_importer
def is_tracking_changes(): def is_tracking_changes():
""" """
@@ -41,7 +41,7 @@ def track_changes(track=True):
if track: if track:
if not _web2py_date_tracker_importer: if not _web2py_date_tracker_importer:
_web2py_date_tracker_importer = \ _web2py_date_tracker_importer = \
_Web2pyDateTrackerImporter(_web2py_path) _Web2pyDateTrackerImporter(_web2py_path)
__builtin__.__import__ = _web2py_date_tracker_importer __builtin__.__import__ = _web2py_date_tracker_importer
else: else:
__builtin__.__import__ = _web2py_importer __builtin__.__import__ = _web2py_importer
@@ -326,3 +326,4 @@ class _Web2pyDateTrackerImporter(_Web2pyImporter, _DateTrackerImporter):