Hi all,
I have a newly updated web2py install. If I create a new
application and click on any controller associated with the
appadmin.py, I get a DEMO_MODE is not defined error. This is before
doing any sort of coding. Am I missing some sort of configuration
setting?
Any help is much appreciated.
Joe
Version web2py Version 1.87.2 (2010-10-12 15:23:17)
Error traceback
1.
2.
3.
4.
5.
6.
7.
Traceback (most recent call last):
File "/Users/jjasinsk/Sites/web2py/web2py/gluon/restricted.py", line
188, in restricted
exec ccode in environment
File "/Users/jjasinsk/Sites/web2py/web2py/applications/asdf/
controllers/appadmin.py", line 14, in <module>
if DEMO_MODE:
NameError: name 'DEMO_MODE' is not defined
Error snapshot
Detailed traceback description
* Exception: <type 'exceptions.NameError'>(name 'DEMO_MODE' is not
defined)
Exception instance attributes
o __setattr__: <method-wrapper '__setattr__' of
exceptions.NameError object at 0x10160cc68>
o __reduce_ex__: <built-in method __reduce_ex__ of
exceptions.NameError object at 0x10160cc68>
o __getslice__: <method-wrapper '__getslice__' of
exceptions.NameError object at 0x10160cc68>
o __getitem__: <method-wrapper '__getitem__' of
exceptions.NameError object at 0x10160cc68>
o __setstate__: <built-in method __setstate__ of
exceptions.NameError object at 0x10160cc68>
o __getattribute__: <method-wrapper '__getattribute__' of
exceptions.NameError object at 0x10160cc68>
o __str__: <method-wrapper '__str__' of exceptions.NameError
object at 0x10160cc68>
o args: ("name 'DEMO_MODE' is not defined",)
o __reduce__: <built-in method __reduce__ of
exceptions.NameError object at 0x10160cc68>
o __format__: <built-in method __format__ of
exceptions.NameError object at 0x10160cc68>
o __class__: <type 'exceptions.NameError'>
o __dict__: {}
o __delattr__: <method-wrapper '__delattr__' of
exceptions.NameError object at 0x10160cc68>
o __subclasshook__: <built-in method __subclasshook__ of
type object at 0x10011b640>
o __repr__: <method-wrapper '__repr__' of
exceptions.NameError object at 0x10160cc68>
o __init__: <method-wrapper '__init__' of
exceptions.NameError object at 0x10160cc68>
o __hash__: <method-wrapper '__hash__' of
exceptions.NameError object at 0x10160cc68>
o __sizeof__: <built-in method __sizeof__ of
exceptions.NameError object at 0x10160cc68>
o __doc__: 'Name not found globally.'
o __unicode__: <built-in method __unicode__ of
exceptions.NameError object at 0x10160cc68>
o __new__: <built-in method __new__ of type object at
0x10011b640>
* Python 2.6.1: /opt/local/bin/python
File /Users/jjasinsk/Sites/web2py/web2py/gluon/restricted.py in
restricted at line 188
[ code | arguments | variables ]
Function argument list: (code='# -*- coding: utf-8 -*-\n\n#
#####################...k=disk)\n\n
\nresponse._vars=response._caller(index)\n', environment={'A': <class
'gluon.html.A'>, 'Auth': <class 'gluon.tools.Auth'>, 'B': <class
'gluon.html.B'>, 'BEAUTIFY': <class 'gluon.html.BEAUTIFY'>, 'BODY':
<class 'gluon.html.BODY'>, 'BR': <class 'gluon.html.BR'>, 'CENTER':
<class 'gluon.html.CENTER'>, 'CLEANUP': <class
'gluon.validators.CLEANUP'>, 'CODE': <class 'gluon.html.CODE'>,
'CRYPT': <class 'gluon.validators.CRYPT'>, ...}, layer='/Users/
jjasinsk/Sites/web2py/web2py/applications/asdf/controllers/
appadmin.py')
183.
184.
185.
186.
187.
188.
189.
190.
191.
192.
if type(code) == types.CodeType:
ccode = code
else:
ccode = compile2(code,layer)
exec ccode in environment
except HTTP:
raise
except Exception:
# XXX Show exception in Wing IDE if running in debugger
* environment: {'A': <class 'gluon.html.A'>, 'Auth': <class
'gluon.tools.Auth'>, 'B': <class 'gluon.html.B'>, 'BEAUTIFY': <class
'gluon.html.BEAUTIFY'>, 'BODY': <class 'gluon.html.BODY'>, 'BR':
<class 'gluon.html.BR'>, 'CENTER': <class 'gluon.html.CENTER'>,
'CLEANUP': <class 'gluon.validators.CLEANUP'>, 'CODE': <class
'gluon.html.CODE'>, 'CRYPT': <class 'gluon.validators.CRYPT'>, ...}
* ccode: <code object <module> at 0x10138d300, file "/
Use...plications/asdf/controllers/appadmin.py", line 7>
File /Users/jjasinsk/Sites/web2py/web2py/applications/asdf/controllers/
appadmin.py in <module> at line 14
[ code | arguments | variables ]
Function argument list: ()
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
import datetime
import copy
import gluon.contenttype
import gluon.fileutils
if DEMO_MODE:
response.flash = T('disabled in demo mode')
redirect(URL('default','site'))
# ## critical --- make a copy of the environment
* DEMO_MODE: undefined