The error is that in plugin_powertable.py there are these lines: try: headers[c] = sqlrows.db[t][f].label except KeyError:
They should be changed to try: headers[c] = sqlrows.db[t][f].label except (KeyError, AttributeError): The fact is that table[f] when f is an invalid key now raises an AttributeError, not a KeyError. That is because table[f] is the same as getattr(table,f). While we can change and revert this behavior, making table['f'] equivalent to table.f instead of vice versa resulted in a 10x improvement while extracting data from DAL. On Monday, 8 October 2012 10:44:15 UTC-5, Don_X wrote: > > it runs by bypassing the admin/default/index page ... > but F.Y.I > > the powertable app example still does not run : I get the following error : > > > <type 'exceptions.AttributeError'> 'Row' object has no attribute 'product' > Versionweb2py™(2, 1, 0, datetime.datetime(2012, 10, 8, 15, 17, 50), 'dev') > PythonPython 2.7.3: /usr/bin/python > > > Traceback > > 1. > 2. > 3. > 4. > 5. > 6. > 7. > 8. > 9. > 10. > 11. > 12. > 13. > 14. > 15. > 16. > > Traceback (most recent call last): > File "/home/www-data/web2py/gluon/restricted.py", line 209, in restricted > exec ccode in environment > File "/home/www-data/web2py/applications/powertable/controllers/default.py" > <http://web2py.loc/admin/default/edit/powertable/controllers/default.py>, > line 80, in <module> > File "/home/www-data/web2py/gluon/globals.py", line 187, in <lambda> > self._caller = lambda f: f() > File "/home/www-data/web2py/applications/powertable/controllers/default.py" > <http://web2py.loc/admin/default/edit/powertable/controllers/default.py>, > line 25, in index > table = table.create() > File > "/home/www-data/web2py/applications/powertable/models/plugin_powertable.py" > <http://web2py.loc/admin/default/edit/powertable/models/plugin_powertable.py>, > line 810, in plugin_powertable > PowerTable(), > File > "/home/www-data/web2py/applications/powertable/models/plugin_powertable.py" > <http://web2py.loc/admin/default/edit/powertable/models/plugin_powertable.py>, > line 214, in __init__ > _id = record[keycolumntbl][keycolumnfld] > File "/home/www-data/web2py/gluon/dal.py", line 6376, in __getitem__ > return ogetattr(self, key) > AttributeError: 'Row' object has no attribute 'product' > > > I wish I knew how to fix this ! ... I will try though ! > > --