I have an aplication deployed in GAE tha has been running for months with
no problem, but in the last deployment in GAE, it has raised a new error:
TypeError: ConjunctionNode() expects Node instances as arguments; received
a non-Node instance None
The error has to do with *IS_IN_DB* validator, and is has appeared in the
last deployment (today). It worked fine until now.
This is the code:
def index_gestor():
titulares = db(db.auth_user.tipo_usuario=='Titular')
form = SQLFORM.factory(
Field('socio', db.auth_user, requires =
IS_IN_DB(titulares,'auth_user.id','%(last_name)s'+', '+ '%(first_name)s'+'
- '+ '%(f_numero_socio)s',sort=True)),
Field('consulta', type='string', requires =
IS_IN_SET(['Familiares', 'Movimientos','Pedidos']),default='Familiares'),
buttons=[TAG.button('CONSULTAR',_type="submit", _class="btn
btn-warning btn-large")],
table_name='seleccion_socios')
if form.process().accepted:
if form.vars.consulta == 'Familiares':
redirect(URL("gestor","familiares_socio_manage.html",args=[form.vars.socio],user_signature=True))
elif form.vars.consulta == 'Movimientos':
redirect(URL("gestor","cuenta_socio_manage.html",args=[form.vars.socio],user_signature=True))
elif form.vars.consulta == 'Pedidos':
redirect(URL("gestor_productos","pedidos_por_socio",args=[form.vars.socio],user_signature=True))
return locals()
The problem is with the line Field('socio', db.auth_user, requires =
IS_IN_DB(titulares,'auth_user.id','%(last_name)s'+', '+ '%(first_name)s'+'
- '+ '%(f_numero_socio)s',sort=True)),
This is the ticket:
Traceback (most recent call last): File
"/base/data/home/apps/s~clubatletismosada/2.386403586504283664/gluon/restricted.py",
line 227
<https://console.developers.google.com/project/clubatletismosada/clouddev/debug/resolve_location?appModule=default&appVersion=2×tampNanos=1439465598003000000&file=%2Fbase%2Fdata%2Fhome%2Fapps%2Fs~clubatletismosada%2F2.386403586504283664%2Fgluon%2Frestricted.py&line=227>,
in restricted exec ccode in environment File
"/base/data/home/apps/s~clubatletismosada/2.386403586504283664/applications/CAS/controllers/gestor.py",
line 400
<https://console.developers.google.com/project/clubatletismosada/clouddev/debug/resolve_location?appModule=default&appVersion=2×tampNanos=1439465598003000000&file=%2Fbase%2Fdata%2Fhome%2Fapps%2Fs~clubatletismosada%2F2.386403586504283664%2Fapplications%2FCAS%2Fcontrollers%2Fgestor.py&line=400>,
in <module> File
"/base/data/home/apps/s~clubatletismosada/2.386403586504283664/gluon/globals.py",
line 412
<https://console.developers.google.com/project/clubatletismosada/clouddev/debug/resolve_location?appModule=default&appVersion=2×tampNanos=1439465598003000000&file=%2Fbase%2Fdata%2Fhome%2Fapps%2Fs~clubatletismosada%2F2.386403586504283664%2Fgluon%2Fglobals.py&line=412>,
in <lambda> self._caller = lambda f: f() File
"/base/data/home/apps/s~clubatletismosada/2.386403586504283664/gluon/tools.py",
line 3769
<https://console.developers.google.com/project/clubatletismosada/clouddev/debug/resolve_location?appModule=default&appVersion=2×tampNanos=1439465598003000000&file=%2Fbase%2Fdata%2Fhome%2Fapps%2Fs~clubatletismosada%2F2.386403586504283664%2Fgluon%2Ftools.py&line=3769>,
in f return action(*a, **b) File
"/base/data/home/apps/s~clubatletismosada/2.386403586504283664/applications/CAS/controllers/gestor.py",
line 12
<https://console.developers.google.com/project/clubatletismosada/clouddev/debug/resolve_location?appModule=default&appVersion=2×tampNanos=1439465598003000000&file=%2Fbase%2Fdata%2Fhome%2Fapps%2Fs~clubatletismosada%2F2.386403586504283664%2Fapplications%2FCAS%2Fcontrollers%2Fgestor.py&line=12>,
in index_gestor table_name='seleccion_socios') File
"/base/data/home/apps/s~clubatletismosada/2.386403586504283664/gluon/sqlhtml.py",
line 1771
<https://console.developers.google.com/project/clubatletismosada/clouddev/debug/resolve_location?appModule=default&appVersion=2×tampNanos=1439465598003000000&file=%2Fbase%2Fdata%2Fhome%2Fapps%2Fs~clubatletismosada%2F2.386403586504283664%2Fgluon%2Fsqlhtml.py&line=1771>,
in factory **attributes) File
"/base/data/home/apps/s~clubatletismosada/2.386403586504283664/gluon/sqlhtml.py",
line 1259
<https://console.developers.google.com/project/clubatletismosada/clouddev/debug/resolve_location?appModule=default&appVersion=2×tampNanos=1439465598003000000&file=%2Fbase%2Fdata%2Fhome%2Fapps%2Fs~clubatletismosada%2F2.386403586504283664%2Fgluon%2Fsqlhtml.py&line=1259>,
in __init__ inp = self.widgets.options.widget(field, default) File
"/base/data/home/apps/s~clubatletismosada/2.386403586504283664/gluon/sqlhtml.py",
line 313
<https://console.developers.google.com/project/clubatletismosada/clouddev/debug/resolve_location?appModule=default&appVersion=2×tampNanos=1439465598003000000&file=%2Fbase%2Fdata%2Fhome%2Fapps%2Fs~clubatletismosada%2F2.386403586504283664%2Fgluon%2Fsqlhtml.py&line=313>,
in widget options = requires[0].options() File
"/base/data/home/apps/s~clubatletismosada/2.386403586504283664/gluon/validators.py",
line 586
<https://console.developers.google.com/project/clubatletismosada/clouddev/debug/resolve_location?appModule=default&appVersion=2×tampNanos=1439465598003000000&file=%2Fbase%2Fdata%2Fhome%2Fapps%2Fs~clubatletismosada%2F2.386403586504283664%2Fgluon%2Fvalidators.py&line=586>,
in options self.build_set() File
"/base/data/home/apps/s~clubatletismosada/2.386403586504283664/gluon/validators.py",
line 572
<https://console.developers.google.com/project/clubatletismosada/clouddev/debug/resolve_location?appModule=default&appVersion=2×tampNanos=1439465598003000000&file=%2Fbase%2Fdata%2Fhome%2Fapps%2Fs~clubatletismosada%2F2.386403586504283664%2Fgluon%2Fvalidators.py&line=572>,
in build_set records = self.dbset(table).select(*fields, **dd) File
"/base/data/home/apps/s~clubatletismosada/2.386403586504283664/gluon/packages/dal/pydal/objects.py",
line 2026
<https://console.developers.google.com/project/clubatletismosada/clouddev/debug/resolve_location?appModule=default&appVersion=2×tampNanos=1439465598003000000&file=%2Fbase%2Fdata%2Fhome%2Fapps%2Fs~clubatletismosada%2F2.386403586504283664%2Fgluon%2Fpackages%2Fdal%2Fpydal%2Fobjects.py&line=2026>,
in select return adapter.select(self.query,fields,attributes) File
"/base/data/home/apps/s~clubatletismosada/2.386403586504283664/gluon/packages/dal/pydal/adapters/google_adapters.py",
line 484
<https://console.developers.google.com/project/clubatletismosada/clouddev/debug/resolve_location?appModule=default&appVersion=2×tampNanos=1439465598003000000&file=%2Fbase%2Fdata%2Fhome%2Fapps%2Fs~clubatletismosada%2F2.386403586504283664%2Fgluon%2Fpackages%2Fdal%2Fpydal%2Fadapters%2Fgoogle_adapters.py&line=484>,
in select (items, tablename, fields) =
self.select_raw(query,fields,attributes) File
"/base/data/home/apps/s~clubatletismosada/2.386403586504283664/gluon/packages/dal/pydal/adapters/google_adapters.py",
line 376
<https://console.developers.google.com/project/clubatletismosada/clouddev/debug/resolve_location?appModule=default&appVersion=2×tampNanos=1439465598003000000&file=%2Fbase%2Fdata%2Fhome%2Fapps%2Fs~clubatletismosada%2F2.386403586504283664%2Fgluon%2Fpackages%2Fdal%2Fpydal%2Fadapters%2Fgoogle_adapters.py&line=376>,
in select_raw filters = self.expand(query) File
"/base/data/home/apps/s~clubatletismosada/2.386403586504283664/gluon/packages/dal/pydal/adapters/google_adapters.py",
line 237
<https://console.developers.google.com/project/clubatletismosada/clouddev/debug/resolve_location?appModule=default&appVersion=2×tampNanos=1439465598003000000&file=%2Fbase%2Fdata%2Fhome%2Fapps%2Fs~clubatletismosada%2F2.386403586504283664%2Fgluon%2Fpackages%2Fdal%2Fpydal%2Fadapters%2Fgoogle_adapters.py&line=237>,
in expand return expression.op(expression.first, expression.second) File
"/base/data/home/apps/s~clubatletismosada/2.386403586504283664/gluon/packages/dal/pydal/adapters/google_adapters.py",
line 257
<https://console.developers.google.com/project/clubatletismosada/clouddev/debug/resolve_location?appModule=default&appVersion=2×tampNanos=1439465598003000000&file=%2Fbase%2Fdata%2Fhome%2Fapps%2Fs~clubatletismosada%2F2.386403586504283664%2Fgluon%2Fpackages%2Fdal%2Fpydal%2Fadapters%2Fgoogle_adapters.py&line=257>,
in AND return ndb.AND(first, second) File
"/base/data/home/runtimes/python27/python27_lib/versions/1/google/appengine/ext/ndb/query.py",
line 558, in __new__ ' received a non-Node instance %r' % node) TypeError:
ConjunctionNode() expects Node instances as arguments; received a non-Node
instance None
This is the first hint I've found:
https://cloud.google.com/appengine/docs/python/refdocs/modules/google/appengine/ext/ndb/query
Any help would be appreciated.
--
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.