當前位置: 首頁>>代碼示例>>Python>>正文


Python Router.install_routes方法代碼示例

本文整理匯總了Python中mamba.web.routing.Router.install_routes方法的典型用法代碼示例。如果您正苦於以下問題:Python Router.install_routes方法的具體用法?Python Router.install_routes怎麽用?Python Router.install_routes使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在mamba.web.routing.Router的用法示例。


在下文中一共展示了Router.install_routes方法的7個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: StubController

# 需要導入模塊: from mamba.web.routing import Router [as 別名]
# 或者: from mamba.web.routing.Router import install_routes [as 別名]
class StubController(object):

    def __init__(self):
        self.path = ''
        self._router = Router()
        self._router.install_routes(self)
        self.children = {}

    def render(self, request):
        return self._router.dispatch(self, request)

    def get_register_path(self):
        return self.path

    @decoroute('/test/<int:user_id>')
    def test(self, request, user_id, **kwargs):
        return 'User ID : {}'.format(user_id)

    @decoroute('/defer')
    @defer.inlineCallbacks
    def deferred(self, request, **kwargs):
        val1 = yield 'Hello '
        val2 = yield 'Defer!'
        defer.returnValue(val1 + val2)

    @decoroute('/209')
    def unknown(self, request, **kwargs):
        pass
開發者ID:DamnWidget,項目名稱:mamba,代碼行數:30,代碼來源:test_web.py

示例2: test_lookup_returns_not_implemented_on_valid_url_invalid_method

# 需要導入模塊: from mamba.web.routing import Router [as 別名]
# 或者: from mamba.web.routing.Router import install_routes [as 別名]
    def test_lookup_returns_not_implemented_on_valid_url_invalid_method(self):

        controller = StubController()
        request = request_generator(['/test/102'], method='POST')
        router = Router()
        router.install_routes(controller)
        route_dispatcher = RouteDispatcher(router, controller, request)

        self.assertEqual(route_dispatcher.lookup()[0], 'NotImplemented')
開發者ID:DamnWidget,項目名稱:mamba,代碼行數:11,代碼來源:test_web.py

示例3: test_lookup_returns_route

# 需要導入模塊: from mamba.web.routing import Router [as 別名]
# 或者: from mamba.web.routing.Router import install_routes [as 別名]
    def test_lookup_returns_route(self):

        controller = StubController()
        request = request_generator(['/test/102'])
        router = Router()
        router.install_routes(controller)
        route_dispatcher = RouteDispatcher(router, controller, request)

        self.assertIsInstance(route_dispatcher.lookup()[0], Route)
開發者ID:DamnWidget,項目名稱:mamba,代碼行數:11,代碼來源:test_web.py

示例4: test_dispatch_returns_unknown_209_on_no_return_from_method

# 需要導入模塊: from mamba.web.routing import Router [as 別名]
# 或者: from mamba.web.routing.Router import install_routes [as 別名]
    def test_dispatch_returns_unknown_209_on_no_return_from_method(self):

        controller = StubController()
        request = request_generator(['/209'], method='GET')
        router = Router()
        router.install_routes(controller)

        self.assertIsInstance(
            router.dispatch(controller, request).result, response.Unknown
        )
開發者ID:DamnWidget,項目名稱:mamba,代碼行數:12,代碼來源:test_web.py

示例5: test_install_router_fails_when_give_wrong_arguments

# 需要導入模塊: from mamba.web.routing import Router [as 別名]
# 或者: from mamba.web.routing.Router import install_routes [as 別名]
    def test_install_router_fails_when_give_wrong_arguments(self):

        router = Router()

        @decoroute('/test')
        def test(self, request, user_id, **kwargs):
            return 'I will fail'

        StubController.test2 = test
        router.install_routes(StubController())

        # only one of the routes should be installed
        self.assertTrue(len(router.routes['GET']) == 3)
開發者ID:DamnWidget,項目名稱:mamba,代碼行數:15,代碼來源:test_web.py

示例6: test_install_several_HTTP_methods_per_route_decorator

# 需要導入模塊: from mamba.web.routing import Router [as 別名]
# 或者: from mamba.web.routing.Router import install_routes [as 別名]
    def test_install_several_HTTP_methods_per_route_decorator(self):

        router = Router()

        class MyStubController(StubController):
            @decoroute('/multimethod_test', method=['GET', 'POST'])
            def multimethod_test(self, request, **kwargs):
                return None

        router.install_routes(MyStubController())

        self.assertTrue(len(router.routes['GET']) == 4)
        self.assertTrue(len(router.routes['POST']) == 1)
        self.assertEqual(
            router.routes['GET']['/multimethod_test'],
            router.routes['POST']['/multimethod_test']
        )
開發者ID:DamnWidget,項目名稱:mamba,代碼行數:19,代碼來源:test_web.py

示例7: test_install_routes_register_route

# 需要導入模塊: from mamba.web.routing import Router [as 別名]
# 或者: from mamba.web.routing.Router import install_routes [as 別名]
    def test_install_routes_register_route(self):

        router = Router()
        router.install_routes(StubController())

        self.assertTrue(len(router.routes['GET']) == 3)

        del router
        router = Router()

        class MyStubController(StubController):
            @decoroute('/another_test')
            def another_test(self, request, **kwargs):
                return None

        router.install_routes(MyStubController())

        self.assertTrue(len(router.routes['GET']) == 4)
開發者ID:DamnWidget,項目名稱:mamba,代碼行數:20,代碼來源:test_web.py


注:本文中的mamba.web.routing.Router.install_routes方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。