diff options
| author | Malthe Borch <mborch@gmail.com> | 2009-10-22 13:17:19 +0000 |
|---|---|---|
| committer | Malthe Borch <mborch@gmail.com> | 2009-10-22 13:17:19 +0000 |
| commit | 7a13fbf4f966df1a4a35c47003155f41fe498a93 (patch) | |
| tree | 41fb63b4104e24e292705bd1f5fea5a483e7cb65 /repoze/bfg/view.py | |
| parent | d6df9b056b5ea87e8d08cbc52c284b5eb154b29b (diff) | |
| download | pyramid-7a13fbf4f966df1a4a35c47003155f41fe498a93.tar.gz pyramid-7a13fbf4f966df1a4a35c47003155f41fe498a93.tar.bz2 pyramid-7a13fbf4f966df1a4a35c47003155f41fe498a93.zip | |
Added ``path_info`` predicate (regex-filters on the corresponding HTTP header).
Diffstat (limited to 'repoze/bfg/view.py')
| -rw-r--r-- | repoze/bfg/view.py | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/repoze/bfg/view.py b/repoze/bfg/view.py index c1e560ea8..11aea496f 100644 --- a/repoze/bfg/view.py +++ b/repoze/bfg/view.py @@ -242,8 +242,8 @@ class bfg_view(object): The following arguments are supported: ``for_``, ``permission``, ``name``, ``request_type``, ``route_name``, ``request_method``, - ``request_param``, ``containment``, ``xhr``, ``accept``, and - ``header``. + ``request_param``, ``containment``, ``xhr``, ``accept``, + ``header`` and ``path_info``. If ``for_`` is not supplied, the interface ``zope.interface.Interface`` (matching any context) is used. @@ -319,6 +319,10 @@ class bfg_view(object): information about the allowable composition and matching behavior of this value. + If ``path_info`` is specified, it must be a regular + expression. The view will only be invoked if the ``PATH_INFO`` + HTTP header matches the expression. + Any individual or all parameters can be omitted. The simplest bfg_view declaration then becomes:: @@ -420,7 +424,7 @@ class bfg_view(object): def __init__(self, name='', request_type=None, for_=None, permission=None, route_name=None, request_method=None, request_param=None, containment=None, attr=None, renderer=None, wrapper=None, - xhr=False, accept=None, header=None): + xhr=False, accept=None, header=None, path_info=None): self.name = name self.request_type = request_type self.for_ = for_ @@ -435,6 +439,7 @@ class bfg_view(object): self.xhr = xhr self.accept = accept self.header = header + self.path_info = path_info def __call__(self, wrapped): setting = self.__dict__.copy() |
