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


Python routing.Rule方法代碼示例

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


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

示例1: get_rules

# 需要導入模塊: from werkzeug import routing [as 別名]
# 或者: from werkzeug.routing import Rule [as 別名]
def get_rules(self, map):
        for rulefactory in self.rules:
            for rule in rulefactory.get_rules(map):
                new_defaults = subdomain = None
                if rule.defaults:
                    new_defaults = {}
                    for key, value in iteritems(rule.defaults):
                        if isinstance(value, string_types):
                            value = format_string(value, self.context)
                        new_defaults[key] = value
                if rule.subdomain is not None:
                    subdomain = format_string(rule.subdomain, self.context)
                new_endpoint = rule.endpoint
                if isinstance(new_endpoint, string_types):
                    new_endpoint = format_string(new_endpoint, self.context)
                yield Rule(
                    format_string(rule.rule, self.context),
                    new_defaults,
                    subdomain,
                    rule.methods,
                    rule.build_only,
                    new_endpoint,
                    rule.strict_slashes,
                ) 
開發者ID:Frank-qlu,項目名稱:recruit,代碼行數:26,代碼來源:routing.py

示例2: get_rules

# 需要導入模塊: from werkzeug import routing [as 別名]
# 或者: from werkzeug.routing import Rule [as 別名]
def get_rules(self, map):
        for rulefactory in self.rules:
            for rule in rulefactory.get_rules(map):
                new_defaults = subdomain = None
                if rule.defaults:
                    new_defaults = {}
                    for key, value in iteritems(rule.defaults):
                        if isinstance(value, string_types):
                            value = format_string(value, self.context)
                        new_defaults[key] = value
                if rule.subdomain is not None:
                    subdomain = format_string(rule.subdomain, self.context)
                new_endpoint = rule.endpoint
                if isinstance(new_endpoint, string_types):
                    new_endpoint = format_string(new_endpoint, self.context)
                yield Rule(
                    format_string(rule.rule, self.context),
                    new_defaults,
                    subdomain,
                    rule.methods,
                    rule.build_only,
                    new_endpoint,
                    rule.strict_slashes
                ) 
開發者ID:jpush,項目名稱:jbox,代碼行數:26,代碼來源:routing.py

示例3: get_empty_kwargs

# 需要導入模塊: from werkzeug import routing [as 別名]
# 或者: from werkzeug.routing import Rule [as 別名]
def get_empty_kwargs(self):
        """
        Provides kwargs for instantiating empty copy with empty()

        Use this method to provide custom keyword arguments to the subclass of
        ``Rule`` when calling ``some_rule.empty()``.  Helpful when the subclass
        has custom keyword arguments that are needed at instantiation.

        Must return a ``dict`` that will be provided as kwargs to the new
        instance of ``Rule``, following the initial ``self.rule`` value which
        is always provided as the first, required positional argument.
        """
        defaults = None
        if self.defaults:
            defaults = dict(self.defaults)
        return dict(defaults=defaults, subdomain=self.subdomain,
                    methods=self.methods, build_only=self.build_only,
                    endpoint=self.endpoint, strict_slashes=self.strict_slashes,
                    redirect_to=self.redirect_to, alias=self.alias,
                    host=self.host) 
開發者ID:jpush,項目名稱:jbox,代碼行數:22,代碼來源:routing.py

示例4: url

# 需要導入模塊: from werkzeug import routing [as 別名]
# 或者: from werkzeug.routing import Rule [as 別名]
def url(url: str, method: str):
    """Show details for a specific URL."""
    try:
        url_rule, params = (current_app.url_map.bind('localhost')
                            .match(url, method=method, return_rule=True))
    except (NotFound, MethodNotAllowed) as e:
        click.secho(str(e), fg='white', bg='red')
    else:
        headings = ('Method(s)', 'Rule', 'Params', 'Endpoint', 'View', 'Options')
        print_table(headings,
                    [(_get_http_methods(url_rule),
                      url_rule.rule if url_rule.strict_slashes
                                    else url_rule.rule + '[/]',
                      _format_dict(params),
                      url_rule.endpoint,
                      _get_rule_view(url_rule),
                      _format_rule_options(url_rule))],
                    ['<' if i > 0 else '>' for i, col in enumerate(headings)],
                    primary_column_idx=1) 
開發者ID:briancappello,項目名稱:flask-unchained,代碼行數:21,代碼來源:urls.py

示例5: urls

# 需要導入模塊: from werkzeug import routing [as 別名]
# 或者: from werkzeug.routing import Rule [as 別名]
def urls(order_by: Optional[str] = None):
    """List all URLs registered with the app."""
    url_rules: List[Rule] = current_app.url_map._rules
    if not url_rules:
        click.echo("No routes found.")
        return

    # sort the rules. by default they're sorted by priority,
    # ie in the order they were registered with the app
    if order_by == 'view':
        url_rules = sorted(url_rules, key=_get_rule_view)
    elif order_by != 'priority':
        url_rules = sorted(url_rules, key=lambda rule: getattr(rule, order_by))

    headings = ('Method(s)', 'Rule', 'Endpoint', 'View', 'Options')
    print_table(headings,
                [(_get_http_methods(url_rule),
                  url_rule.rule if url_rule.strict_slashes
                                else url_rule.rule.rstrip('/') + '[/]',
                  url_rule.endpoint,
                  _get_rule_view(url_rule),
                  _format_rule_options(url_rule),
                  ) for url_rule in url_rules],
                ['<' if i > 0 else '>' for i, col in enumerate(headings)],
                primary_column_idx=1) 
開發者ID:briancappello,項目名稱:flask-unchained,代碼行數:27,代碼來源:urls.py

示例6: _get_rule_view

# 需要導入模塊: from werkzeug import routing [as 別名]
# 或者: from werkzeug.routing import Rule [as 別名]
def _get_rule_view(url_rule: Rule) -> str:
    try:
        view_fn = current_app.view_functions[url_rule.endpoint]
    except KeyError:
        return '(None)'

    view_class = getattr(view_fn, 'view_class', None)
    view_module = inspect.getmodule(view_class if view_class else view_fn)

    view_fn_name = view_fn.__name__
    if '.as_view.' in view_fn.__qualname__:
        view_fn_name = view_class.__name__
    elif '.method_as_view.' in view_fn.__qualname__:
        view_fn_name = f'{view_class.__name__}.{view_fn.__name__}'

    return f'{view_module.__name__}.{view_fn_name}' 
開發者ID:briancappello,項目名稱:flask-unchained,代碼行數:18,代碼來源:urls.py

示例7: _init_app

# 需要導入模塊: from werkzeug import routing [as 別名]
# 或者: from werkzeug.routing import Rule [as 別名]
def _init_app(self, middleware=None):
        """Initialize a WSGI application for handling POST to '/'.

        `middleware` may be provided as WSGI middleware.

        """
        routes = routing.Map([
            routing.Rule('/', endpoint=self._handle_inference),
            routing.Rule('/ping', endpoint=self._handle_ping),
            routing.Rule('/shutdown', endpoint=self._handle_shutdown),
        ])
        def app(env, start_resp):
            """WSGI application to handle server requests.

            """
            urls = routes.bind_to_environ(env)
            try:
                handler, _kw = urls.match()
                req = Request(env)
                if middleware:
                    return middleware(handler, req)(env, start_resp)
                return handler(req)(env, start_resp)
            except HTTPException as e:
                return e(env, start_resp)
        return app 
開發者ID:iitzco,項目名稱:tfserve,代碼行數:27,代碼來源:tfserve.py

示例8: get_empty_kwargs

# 需要導入模塊: from werkzeug import routing [as 別名]
# 或者: from werkzeug.routing import Rule [as 別名]
def get_empty_kwargs(self):
        """
        Provides kwargs for instantiating empty copy with empty()

        Use this method to provide custom keyword arguments to the subclass of
        ``Rule`` when calling ``some_rule.empty()``.  Helpful when the subclass
        has custom keyword arguments that are needed at instantiation.

        Must return a ``dict`` that will be provided as kwargs to the new
        instance of ``Rule``, following the initial ``self.rule`` value which
        is always provided as the first, required positional argument.
        """
        defaults = None
        if self.defaults:
            defaults = dict(self.defaults)
        return dict(
            defaults=defaults,
            subdomain=self.subdomain,
            methods=self.methods,
            build_only=self.build_only,
            endpoint=self.endpoint,
            strict_slashes=self.strict_slashes,
            redirect_to=self.redirect_to,
            alias=self.alias,
            host=self.host,
        ) 
開發者ID:Frank-qlu,項目名稱:recruit,代碼行數:28,代碼來源:routing.py


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