zoukankan      html  css  js  c++  java
  • cherrypy入门

    主要是一个简单的cherrypy hello例子

    import cherrypy
    from jinja2 import Environment, FileSystemLoader
    import os
     
     
    def create_server():
        euterpectl = EuterpeRoot()
     
        route = cherrypy.dispatch.RoutesDispatcher()
        route.mapper.explicit = False
     
        route.connect('index', '/', controller=euterpectl, action='index')
        route.connect('say', '/say/:word', controller=euterpectl, action='say')
        return euterpectl, route
     
     
    class EuterpeRoot:
     
        def __init__(self):
            self.env = Environment(loader=FileSystemLoader('template'))
     
        def render(self, template_name, *args, **kwargs):
            template = self.env.get_template(template_name)
            return template.render(*args, **kwargs)
     
        def index(self):
            return self.render("index.html", salutation='Hello', target='World')
     
        def say(self, word):
            return "say %s" % (word)
     
     
    if __name__ == '__main__':
        server, route = create_server()
        static_dir = os.path.join(os.path.dirname(__file__), "static")
        conf = {
            # 'server.socket_port': 8088,
            'engine.autoreload.on': True,
            'log.screen': True,
            'checker.on': True,
            # 'restart_enable': True,
     
            # add css, image and js static files
            '/style': {'tools.staticdir.on': True,
                       'tools.staticdir.dir': os.path.join(static_dir, 'style')
            },
     
            '/js': {'tools.staticdir.on': True,
                    'tools.staticdir.dir': os.path.join(static_dir, 'js')
            },
     
            '/img': {'tools.staticdir.on': True,
                    'tools.staticdir.dir': os.path.join(static_dir, 'img')
            },
        }
        config = {'/': {'request.dispatch': route},
                  'global': conf
        }
        cherrypy.config.update(config)
        cherrypy.tree.mount(server, '/', config=config)
        cherrypy.engine.start()
        cherrypy.engine.block()
  • 相关阅读:
    Thinkphp各种方法知识图谱
    Yii2.0学习笔记:创建登录表单
    Yii2.0学习笔记:第一个页面Saying Hello
    4.1
    4
    flask(3.0)
    flask(2.0)
    flask(1.1)装饰器装饰多个视图函数出现的问题
    flask(1.0)
    Flask之上下文管理机制
  • 原文地址:https://www.cnblogs.com/nagi/p/4191447.html
Copyright © 2011-2022 走看看