Hier mein Testcode:
Der funktioniert:
Code: Alles auswählen
def get_template(htmlfile, **content_para):
#Jinja2
env = Environment(loader=FileSystemLoader('templates')) #template path
tmpl = env.get_template(htmlfile)
tmpl_result = tmpl.render(**content_para)
return tmpl_result
class index(object):
#t = MyTemplate()
def index(self):
x = time.ctime()
return get_template('test.html', name='Gast', current_date=x)
index.exposed = True
def byForm(self, username=None, password=None):
if (username or password):
return get_template('login.html', name=username, pw=password)
else:
return get_template('login.html', name='nicht angegeben', pw='nicht angegeben')
byForm.exposed = True
cherrypy.quickstart(index(), '/', 'cherrypy.conf')
Code: Alles auswählen
class MyTemplate(object):
def __init__(self):
print "Konstruktor"
def __del__(self):
print "Destruktor"
def get_template(self, htmlfile, **content_para):
#Jinja2
env = Environment(loader=FileSystemLoader('templates')) #template path
tmpl = env.get_template(htmlfile)
tmpl_result = tmpl.render(**content_para)
return tmpl_result
class index(object):
t = MyTemplate()
def index(self):
x = time.ctime()
return t.get_template('test.html', name='Gast', current_date=x)
index.exposed = True
def byForm(self, username=None, password=None):
if (username or password):
return t.get_template('login.html', name=username, pw=password)
else:
return t.get_template('login.html', name='nicht angegeben', pw='nicht angegeben')
byForm.exposed = True
cherrypy.quickstart(index(), '/', 'cherrypy.conf')
NameError: global name 't' is not defined
Habs doch in der index-klasse definiert ?!