进行table.field.max()时,Web2py错误“ pydal.objects.Expression对象” >> [

问题描述 投票:0回答:1
我相信我在这里遵循代码:http://web2py.com/books/default/chapter/29/06/the-database-abstraction-layer?search=insert#sum-avg-min-max-and-len

插入效果很好。max()行给出错误:pydal.objects.Expression对象位于0x0000024D079AF748

我在做什么错?

模型:

db = DAL('sqlite://storage.sqlite') db.define_table( 'CardMasters', Field('Name'), Field('Categories'), Field('Description'), singular="Card Master", plural="Card Masters", format = '%(Name)s (%(Description)s)')

控制器:

def test(): id = db.CardMasters.insert(Name='please work') maxName = db.CardMasters.Name.max() maxid = db.CardMasters.id.max() return locals()

我相信我在这里遵循以下代码:http://web2py.com/books/default/chapter/29/06/the-database-abstraction-layer?search=insert#sum-avg-min-max-and -len插入可以正常工作。 max()行...
web2py
1个回答
0
投票
您没有收到错误。相反,您将返回两个PyDAL Expression对象(DAL .max()对象的Field方法将返回Expression对象)。如果您随后尝试在视图中包括这些对象,则它们将被转换为字符串,并且当您将任意Python对象转换为字符串时,您将获得该对象的默认字符串表示形式,例如<pydal.objects.Expression object at 0x0000024D079AF748>
© www.soinside.com 2019 - 2024. All rights reserved.