fantastic! Uploading your fix to trunk.
On Nov 1, 11:50 pm, MicLee <lmlll...@gmail.com> wrote: > Yes, that part is fine. The problem is in the building of the > Expression object. > > In gql.py:Expression:__or__(): > > was: > return Expression(self.name if self.type!='id' else '__key__' > + '|' + other.name if other.type!='id' else '__key__', None, None) > > should be: > return Expression((self.name if self.type!='id' else > '__key__') + '|' + (other.name if other.type!='id' else '__key__'), > None, None) > > On Nov 2, 1:55 am, mdipierro <mdipie...@cs.depaul.edu> wrote: > > > This is the code in web2py/gluon/contrib/gql.py > > > if orderby: > > if isinstance(orderby, (list, tuple)): > > orderby = gluon.sql.xorify(orderby) > > assert_filter_fields(orderby) > > if orderby.type == 'id': > > orders = ['__key__'] > > else: > > orders = orderby.name.split('|') > > for order in orders: > > items = items.order(order) > > > I think web2py handles it correctly. Either there is a problem on the > > gae side or the indices have not been created. > > > On Nov 1, 7:04 am, MicLee <lmlll...@gmail.com> wrote: > > > > Is it possible to order by multiple fields on GAE? > > > > I tried this (both title and subtitle are strings): > > > pages = db().select(db.page.ALL,orderby=db.page.title| > > > db.page.subtitle) > > > > But apparently the results are ordered by the title field only. > > > > Looking into the index.yaml, there is NO composite index for those 2 > > > fields generated. > > > > Thank you. > >