Thank you Anthony. I always appreciate your input.
I recall using the aggregates max() and count() before and they worked fine
following the book. That was quite long ago. However, this time, I did not
try on the "old" web2py version. I upgraded to 2.15.1 and continued to code
in it.
Using
db(db.table).select(max)
Gave a longer traceback:
Traceback (most recent call last):
File "/Users/web2py/web2py/gluon/restricted.py", line 219, in restricted
exec(ccode, environment)
File "<string>", line 83, in <module>
File "/Users/web2py/web2py/gluon/globals.py", line 422, in write
self.body.write(to_native(xmlescape(data)))
File "/Users/web2py/web2py/gluon/html.py", line 125, in xmlescape
return to_bytes(data.xml())
File "/Users/web2py/web2py/gluon/html.py", line 960, in xml
(fa, co) = self._xml()
File "/Users/web2py/web2py/gluon/html.py", line 952, in _xml
co = b''.join([xmlescape(component) for component in self.components])
File "/Users/web2py/web2py/gluon/html.py", line 125, in xmlescape
return to_bytes(data.xml())
File "/Users/web2py/web2py/gluon/html.py", line 960, in xml
(fa, co) = self._xml()
File "/Users/web2py/web2py/gluon/html.py", line 952, in _xml
co = b''.join([xmlescape(component) for component in self.components])
File "/Users/web2py/web2py/gluon/html.py", line 125, in xmlescape
return to_bytes(data.xml())
File "/Users/web2py/web2py/gluon/html.py", line 960, in xml
(fa, co) = self._xml()
File "/Users/web2py/web2py/gluon/html.py", line 952, in _xml
co = b''.join([xmlescape(component) for component in self.components])
File "/Users/web2py/web2py/gluon/html.py", line 125, in xmlescape
return to_bytes(data.xml())
File "/Users/web2py/web2py/gluon/html.py", line 960, in xml
(fa, co) = self._xml()
File "/Users/web2py/web2py/gluon/html.py", line 952, in _xml
co = b''.join([xmlescape(component) for component in self.components])
File "/Users/web2py/web2py/gluon/html.py", line 125, in xmlescape
return to_bytes(data.xml())
File "/Users/web2py/web2py/gluon/html.py", line 960, in xml
(fa, co) = self._xml()
File "/Users/web2py/web2py/gluon/html.py", line 952, in _xml
co = b''.join([xmlescape(component) for component in self.components])
File "/Users/web2py/web2py/gluon/html.py", line 125, in xmlescape
return to_bytes(data.xml())
File "/Users/web2py/web2py/gluon/packages/dal/pydal/objects.py", line
2497, in xml
rv = self.db.represent('rows_xml', self)
File "/Users/web2py/web2py/gluon/packages/dal/pydal/base.py", line 834,
in represent
return self.representers[name](*args, **kwargs)
File "/Users/web2py/web2py/gluon/sqlhtml.py", line 3319, in __init__
tablemap = dict(((f.tablename, f.table) for f in fieldmap.values()))
File "/Users/web2py/web2py/gluon/sqlhtml.py", line 3319, in <genexpr>
tablemap = dict(((f.tablename, f.table) for f in fieldmap.values()))
AttributeError: 'Expression' object has no attribute 'tablename'
On Friday, July 14, 2017 at 5:43:57 AM UTC+8, Anthony wrote:
>
> Are you saying that used to work but doesn't any longer?
>
> How about db(db.table).select(max)?
>
> Anthony
>
> On Thursday, July 13, 2017 at 1:16:31 PM UTC-4, lyn2py wrote:
>>
>> I'm using a simple query to get aggregate:
>>
>> max = db.table.date.max()
>> row = db().select(max)
>>
>> Just following the example here
>> http://www.web2py.com/books/default/chapter/29/06/the-database-abstraction-layer#sum-avg-min-max-and-len
>>
>> But I ran into this error:
>>
>> Traceback (most recent call last):
>> File "/Users/web2py/web2py/gluon/main.py", line 445, in wsgibase
>> serve_controller(request, response, session)
>> File "/Users/web2py/web2py/gluon/main.py", line 180, in serve_controller
>> page = run_controller_in(request.controller, request.function,
>> environment)
>> File "/Users/web2py/web2py/gluon/compileapp.py", line 660, in
>> run_controller_in
>> vars = vars.xml()
>> File "/Users/web2py/web2py/gluon/packages/dal/pydal/objects.py", line
>> 2497, in xml
>> rv = self.db.represent('rows_xml', self)
>> File "/Users/web2py/web2py/gluon/packages/dal/pydal/base.py", line 834,
>> in represent
>> return self.representers[name](*args, **kwargs)
>> File "/Users/web2py/web2py/gluon/sqlhtml.py", line 3319, in __init__
>> tablemap = dict(((f.tablename, f.table) for f in fieldmap.values()))
>> File "/Users/web2py/web2py/gluon/sqlhtml.py", line 3319, in <genexpr>
>> tablemap = dict(((f.tablename, f.table) for f in fieldmap.values()))
>> AttributeError: 'Expression' object has no attribute 'tablename'
>>
>>
>> Kindly assist.
>>
>>
>> On Tuesday, July 11, 2017 at 5:40:08 AM UTC+8, Massimo Di Pierro wrote:
>>>
>>> It took a year. Thanks to everybody who contributed. There are a ton of
>>> bug fixes and speed improvements.
>>>
>>> I would encourage everybody who contributed to add a comment in this
>>> thread explaining the main features/improvements they have made.
>>>
>>> If anything does not work or was broken it is only fault and I will
>>> remedy if reported.
>>>
>>> Massimo
>>>
>>
--
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
---
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.