that works great! note that I didn't try to send more than 30 items -
so I don't know what would happen if that limit were exceeded.

thanks Massimo!

Dan


On Jun 15, 1:38 pm, mdipierro <mdipie...@cs.depaul.edu> wrote:
> I have not tested/debugged it yet but you can try the latest trunk
>
> db(db.table.field.belongs(('a','b','c'))).select()
>
> Let me know if it works or not, and if not, what's the error.
> We can make it work replatively soon.
>
> Massimo
>
> On Jun 15, 2:04 pm, Dan <danbr...@gmail.com> wrote:
>
> > is it possible to create a GQL format query and send it to the GAE
> > datastore that web2py connects to? what would the code for that be?
>
> > On Jun 15, 10:25 am, Dan <danbr...@gmail.com> wrote:
>
> > > the IN operator is supported according 
> > > tohttp://code.google.com/appengine/docs/python/datastore/queriesandinde...
>
> > > The IN operator also performs multiple queries, one for each item in
> > > the provided list value where all other filters are the same and the
> > > IN filter is replaces with an equal-to filter. The results are merged,
> > > in the order of the items in the list. If a query has more than IN
> > > filter, the query is performed as multiple queries, one for each
> > > combination of values in the IN filters.
> > > A single query containing != and IN operators is limited to 30 sub-
> > > queries.
>
> > > but it looks like the gql.py file has commented out the code for
> > > belongs/IN (line 309) -- why?
>
> > > On Jun 15, 10:16 am, mdipierro <mdipie...@cs.depaul.edu> wrote:
>
> > > > As far as I know GAE does not support this. The only option is to use
> > > > the ListProperty but web2py does not have an interface for it.
>
> > > > Massimo
>
> > > > On Jun 15, 11:45 am, Dan <danbr...@gmail.com> wrote:
>
> > > > > What is the proper way to run a query on Google App Engine that uses
> > > > > an IN clause?
>
> > > > > I want to do something like this (in traditional SQL)
> > > > > SELECT person.name, person.age
> > > > > FROM person
> > > > > WHERE person.name IN ('Ralph','Henry','Sue')
>
> > > > > After searching around here and the web2py docs, I tried two different
> > > > > approaches, and neither of them worked. Please let me know what I can
> > > > > do to fix it. Thanks!
> > > > > Dan
>
> > > > > FIRST ATTEMPT:
> > > > >     personlist = ['Ralph','Henry','Sue']
> > > > >     personresultsqry = db.person.name.belongs(personlist)
> > > > >     personresults = db(personresultsqry).select(db.person.name,
> > > > > db.person.age)
>
> > > > > the error from the GAE dev app server is this:
> > > > > AttributeError: 'SQLField' object has no attribute 'belongs'
>
> > > > > SECOND ATTEMPT:
> > > > >     personlist = ['Ralph','Henry','Sue']
> > > > >     personresultsqry = db.GqlQuery("SELECT * FROM web2py_person WHERE
> > > > > name IN :1", personlist)
> > > > >     personresults = db(personresultsqry).select(db.person.name,
> > > > > db.person.age)
>
> > > > > the error from the GAE dev app server is this:
> > > > > KeyError: 'GqlQuery'
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"web2py Web Framework" group.
To post to this group, send email to web2py@googlegroups.com
To unsubscribe from this group, send email to 
web2py+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/web2py?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to