Oops, I made an assumption "it worked for me with python sdk for appengine
using dev_appserver.py"
That was wrong.
BELONGS is broken in gae.
db(~db.languages.id.belongs(db()._select(db.words.lang,
distinct=True))).select()
causes dev_appserver.py to print out
File "/home/kra/Evolve/Works/Python/web2py_vl/gluon/restricted.py", line
188, in restricted
exec ccode in environment
File
"/home/kra/Evolve/Works/Python/web2py_vl/applications/init/controllers/manage.py:clean",
line 54, in <module>
File "/home/kra/Evolve/Works/Python/web2py_vl/gluon/globals.py", line 95,
in <lambda>
self._caller = lambda f: f()
File
"/home/kra/Evolve/Works/Python/web2py_vl/applications/init/controllers/manage.py:clean",
line 24, in clean
File "/home/kra/Evolve/Works/Python/web2py_vl/gluon/dal.py", line 4511, in
select
return self.db._adapter.select(self.query,fields,attributes)
File "/home/kra/Evolve/Works/Python/web2py_vl/gluon/dal.py", line 2677, in
select
(items, tablename, fields) = self.select_raw(query,fields,attributes)
File "/home/kra/Evolve/Works/Python/web2py_vl/gluon/dal.py", line 2637, in
select_raw
filters = self.expand(query)
File "/home/kra/Evolve/Works/Python/web2py_vl/gluon/dal.py", line 2550, in
expand
return expression.op(expression.first)
File "/home/kra/Evolve/Works/Python/web2py_vl/gluon/dal.py", line 2613, in
NOT
raise SyntaxError, "Not suported %s" % first.op.__name__
SyntaxError: Not suported BELONGS