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 !
>
>

-- 



Reply via email to