view examples/webpy/hello.py @ 696:66eead58c120 trunk

More flexible template loader allowing for loading from package data and dispatching to different template directories based on path prefix. Can be easily extended for using custom template loading. Closes #182.
author cmlenz
date Wed, 26 Mar 2008 22:49:23 +0000
parents e72bd8515dd2
children
line wrap: on
line source
import os
from genshi.template import TemplateLoader
import web

loader = TemplateLoader([os.path.dirname(os.path.abspath(__file__))],
                        auto_reload=True)
urls = ('/(.*)', 'hello')


class hello(object):

    def GET(self, name):
        i = web.input(times=1)
        if not name:
            name = 'world'
        name = name.decode('utf-8')

        tmpl = loader.load('hello.html')
        stream = tmpl.generate(name=name, times=int(i.times))

        web.header('Content-Type', 'text/html; charset=utf-8', unique=True)
        print stream.render('html')


if __name__ == '__main__':
    web.webapi.internalerror = web.debugerror
    web.run(urls, globals())
Copyright (C) 2012-2017 Edgewall Software