当前位置: 首页>>代码示例>>Python>>正文


Python web.loadhook函数代码示例

本文整理汇总了Python中web.loadhook函数的典型用法代码示例。如果您正苦于以下问题:Python loadhook函数的具体用法?Python loadhook怎么用?Python loadhook使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了loadhook函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: test_processors

    def test_processors(self):
        urls = (
            "/(.*)", "blog"
        )
        class blog:
            def GET(self, path):
                return 'blog ' + path

        state = web.storage(x=0, y=0)
        def f():
            state.x += 1

        app_blog = web.application(urls, locals())
        app_blog.add_processor(web.loadhook(f))
        
        urls = (
            "/blog", app_blog,
            "/(.*)", "index"
        )
        class index:
            def GET(self, path):
                return "hello " + path
        app = web.application(urls, locals())
        def g():
            state.y += 1
        app.add_processor(web.loadhook(g))

        app.request('/blog/foo')
        assert state.x == 1 and state.y == 1, repr(state)
        app.request('/foo')
        assert state.x == 1 and state.y == 2, repr(state)
开发者ID:yejun,项目名称:webpy,代码行数:31,代码来源:application.py

示例2: run

	def run(self):
		"""
		启动网站
		"""
		# 初始化
		Common.init();
		
		# 创建web应用
		Logger.info('创建web应用')
		Common.app = web.application(Common.urls, globals())
		
		# 创建session
		Logger.info('创建session')
		Common.initSession(Common.app);
		Common.session.menu = MenuManagement();
		
		# 加载模板
		Logger.info('加载模板')
		Common.render = web.template.render('templates/', base='baseframe', globals={'context': Common.session})
		# 
		# 设置错误页面
		# Common.app.notfound = Common.notfound
		# Common.app.internalerror = Common.internalerror
		# 加载设置
		Logger.info('加载设置')
		# Common.app.add_processor(Common.error_precessor);
		Common.app.add_processor(web.loadhook(Common.session_hook));
		# Common.app.add_processor(web.loadhook(Common.session.menu.setSelectedMenu));
		Common.app.add_processor(web.loadhook(AuthorityManagement.checkAuthority))
		# Common.app.add_processor(web.unloadhook(AuthorityManagement.checkAuthority))
		
		Logger.debug('网站启动')
		Common.initFinish = True
		Common.app.run();
开发者ID:SealOfFire,项目名称:webpy_test,代码行数:34,代码来源:Common.py

示例3: __init__

    def __init__(self):

        #Initialize mappings manager and set main mappings
        self.mappings = mappings.Manager(self, API_URL, ADMIN_API_URL)
        #Initialize main web application here
        self.app = web.application(self.mappings.get_main_mappings(), fvars=globals())



        #All Mappings must be done before web application instance
        #Admin mappings
        self.mappings.add_map_resource('/server/admin/app', 'Admin', api_class_prefix=API_CLASS_PREFIX)
        #Api mappings
        self.mappings.add_map_resource('/server/api/admin_resources', 'ApiAdminResources', api_class_prefix=API_CLASS_PREFIX)
        self.mappings.add_map_resource('/server/api/private_resources', 'ApiPrivateResources', api_class_prefix=API_CLASS_PREFIX)
        self.mappings.add_map_resource('/server/api/public_resources', 'ApiPublicResources', api_class_prefix=API_CLASS_PREFIX)
        #Site mappings
        self.mappings.add_map_resource('/server/app', 'Site', api_class_prefix=API_CLASS_PREFIX)

        #Set new session with initializers
        db = dbs.DBS.dbStore('mysql')
        store = web.session.DBStore(db, 'sessions')
        #Start session
        self.session = web.session.Session(self.app, store,
            initializer={
                'userid': 'anonymous',
                'priv_lev':'',
                'authenticated':False,
                'language': quetzal_config['default_language']
            }
        )
        #Add login session & language hooks
        self.app.add_processor(web.loadhook(self.login_session_hook))
        self.app.add_processor(web.loadhook(self.language_session_hook))
开发者ID:ivanjzr,项目名称:QuetzalCMS,代码行数:34,代码来源:base.py

示例4: __init__

    def __init__(self, mapping, fvars):

        # Parent constructor
        web.application.__init__(self, mapping, fvars) #@UndefinedVariable

        # The views are bound once for all to the configuration
        config.views = web.template.render("app/views/", globals={
            "all_seasons": lambda: Season.all(),
            "all_polls": lambda: Poll.all(),
            "webparts": webparts,
            "formatting": formatting,
            "dates": dates,
            "zip": zip,
            "getattr": getattr,
            "hasattr": hasattr,
            "class_name": lambda x: x.__class__.__name__,
            "namedtuple": collections.namedtuple,
            "config": config,
            "result_statuses": Result.STATUSES,
            "Events": Events
        })

        # The ORM is bound once since it dynamically loads the engine from the configuration
        config.orm = meta.init_orm(lambda : config.engine)

        # Binds the hooking mechanism & the SQL Alchemy processor
        self.add_processor(web.loadhook(http.init_hooks))
        self.add_processor(web.unloadhook(http.execute_hooks))        
        self.add_processor(http.sqlalchemy_processor)

        # Binds the webparts initialization mechanism
        self.add_processor(web.loadhook(webparts.init_webparts))
开发者ID:franck260,项目名称:vpt,代码行数:32,代码来源:application.py

示例5: run_web_server

 def run_web_server(self):
     self.render = web.template.render('templates/')
     
     urls = (
         '/', 'Home',
         '/api/color', 'API_Color',
         '/api/brightness', 'API_Brightness'
     )
     self.app = web.application(urls, globals())
     self.app.add_processor(web.loadhook(self.load_plasma_trim))
     self.app.add_processor(web.loadhook(self.load_renderer))
     self.app.add_processor(web.loadhook(self.load_main_thread_queue))
     
     self.web_server_thread = Thread(None, self.app.run)
     self.web_server_thread.start()
开发者ID:grantjbutler,项目名称:Radiance,代码行数:15,代码来源:server.py

示例6: setUp

    def setUp(self):
        '''
        :return:
        '''
        settings.IS_UNITTEST = True
        settings.DEBUG = True
        ''' 配置测试用的redis配置信息  '''
        settings.REDIS_HOST = "localhost"
        # settings.REDIS_PORT = 8911
        # settings.REDIS_DB = 0

        ''' redisco连接 '''
        settings.rd = redisco.connection_setup(host=settings.REDIS_HOST, port=settings.REDIS_PORT, db=settings.REDIS_DB)

        # ''' 额外的redis连接 '''
        self.redis = redis.StrictRedis(host=settings.REDIS_HOST, port=settings.REDIS_PORT, db=settings.REDIS_DB)

        ''' 启动服务 '''
        web.config.debug = settings.DEBUG

        self.appM = web.application(URLS, HANDLER, autoreload=False)
        application = self.appM.wsgifunc()

        self.appM.notfound = notfound
        self.appM.internalerror = internalerror
        self.appM.add_processor(web.loadhook(header_html))

        session.init(web.session.Session(self.appM, web.session.DiskStore('sessions'), initializer=Initializer(
                                                                                                              User=models.user.User,
                                                                                                              UserGroup=models.usergroup.UserGroup,
                                                                                                              BanLogin=controllers.login_handler.BanLogin,
                                                                                                              settings=settings,
                                                                                                              session=session,
                                                                                                              ))
        )

        ''' 校验session, 添加到app的 processor 流程中,顺序需要在 session初始化之后 '''
        self.appM.add_processor(web.loadhook(verify_session))
        ''' 初始化 html 头, 添加到app的 processor 流程中 '''
        self.appM.add_processor(web.loadhook(header_html))

        web.config.session_parameters['cookie_name'] = 'webpy_session_id'
        web.config.session_parameters['cookie_domain'] = None
        web.config.session_parameters['timeout'] = 10
        web.config.session_parameters['ignore_expiry'] = True
        web.config.session_parameters['ignore_change_ip'] = False
        web.config.session_parameters['secret_key'] = 'akdnA0FJsdJFLSlvno92'
        web.config.session_parameters['expired_message'] = 'Session expired'
开发者ID:lamter,项目名称:WBFSystem,代码行数:48,代码来源:test_static.py

示例7: __new__

  def __new__(cls, *args, **kwargs):
    app = web.application(*args, **kwargs)

    app.add_processor(web.loadhook(cls._connect))
    app.add_processor(web.unloadhook(cls._disconnect))

    return app
开发者ID:AmitShah,项目名称:numenta-apps,代码行数:7,代码来源:__init__.py

示例8: init_app

def init_app():
    app = web.application(urls, globals())
    #app.notfound = api_notfound
    #app.internalerror = api_internalerror
    app.add_processor(web.loadhook(api_loadhook))
    app.add_processor(web.unloadhook(api_unloadhook))    
    return app
开发者ID:gaotianpu,项目名称:todolist,代码行数:7,代码来源:api.py

示例9: test_hook

 def test_hook(self):
     app.add_processor(web.loadhook(before))
     app.add_processor(web.unloadhook(after))
    
     self.assertEqual(app.request('/hello').data, 'yx')
     global str
     self.assertEqual(str, 'yxz')
开发者ID:492852238,项目名称:SourceLearning,代码行数:7,代码来源:myapplication.py

示例10: application

def application(urls, env):
  '''
  A pythonic web.py application

  def hello(ctx, name):
  	if not name:
  		name = 'World'
  	return 'Hello, ' + name + '!'

  urls = ('GET', '/(.*)', hello)
  app = application(urls, locals())
  '''
  def webpy_handler_class(method, pattern, handler):
    ''' convert functional view to class based view consumable by rest of webpy '''
    class _Handler:
      pass
    def wrap(_handler):
      def wrapped(self, *args, **kwargs):
        return _handler(web.ctx, *args, **kwargs)
      return wrapped
    _Handler.__dict__[method] = wrap(handler)
    env[handler.__name__] = _Handler
    return pattern, handler.__name__
  def compile_to_webpy(urls):
    ''' convert to webpy format '''
    return [component
            for method, pattern, handler in urls
            for component in webpy_handler_class(method, pattern, handler) ]
  app = web.application(compile_to_webpy(chunk_urls(urls)), env)
  app.add_processor(web.loadhook(hook_less(app)))
  return app
开发者ID:pavanmishra,项目名称:lesswebpy,代码行数:31,代码来源:lessweb.py

示例11: __init__

    def __init__(self, app):
        self.main_app = app
        self.session = web.session.Session(self.main_app, web.session.DiskStore('sessions'))

        def session_hook():
            web.ctx.session = self.session

        self.main_app.add_processor(web.loadhook(session_hook))
开发者ID:Jamongkad,项目名称:webpy-mvc,代码行数:8,代码来源:SprocketAuth.py

示例12: setup_rendering

 def setup_rendering():
     html = partial(web.template.render, '%s/templates/' % _path)
     slender = html(globals=env)
     render = html(base='base', globals=env)
     def render_hook():
         web.ctx.render = render
         web.ctx.slender = slender
     app.add_processor(web.loadhook(render_hook))
     env['render'] = slender
开发者ID:mekarpeles,项目名称:waltz,代码行数:9,代码来源:setup.py

示例13: main

def main():
    urls = [
            "/", TodosCollection,
            "/(.+)", TodoItem
            ]

    app = web.application(urls, globals())
    app.add_processor(web.loadhook(cors_headers))
    app.run()
开发者ID:vzelmanov,项目名称:todo-backend-py,代码行数:9,代码来源:todo-backend.py

示例14: start_wsgi

def start_wsgi():
    common.load_plugins()
    constants.init_urls()
    app = web.application(constants.urls, globals())
    check_database()
    create_session(app)
    for hook in constants.plugin_hooks_server_start:
        hook()
    app.add_processor(web.loadhook(localization_hook))
    return app.wsgifunc(httpserver.PluginStaticMiddleware)
开发者ID:riolet,项目名称:SAM,代码行数:10,代码来源:server_webserver.py

示例15: init_sessions

def init_sessions(web, app, store, session):
    """kwargs is used to inject options like 'cart' into session."""
    web.config.session_parameters['ignore_expiry'] = True
    session = web.session.Session(app, store, initializer=session)
    def inject_session():
        """closure; uncalled function which wraps session is
        passed to the web loadhook and invoked elsewhere and at a
        later point in time
        """
        web.ctx.session = session
    app.add_processor(web.loadhook(inject_session))
    return session
开发者ID:mekarpeles,项目名称:waltz,代码行数:12,代码来源:setup.py


注:本文中的web.loadhook函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。