diff options
| author | Chris McDonough <chrism@agendaless.com> | 2010-07-24 07:04:49 +0000 |
|---|---|---|
| committer | Chris McDonough <chrism@agendaless.com> | 2010-07-24 07:04:49 +0000 |
| commit | 81a833da2adff04d11b9228406bbc1528be65c64 (patch) | |
| tree | 736765ad3018e4b9e432b4af4bb923fdbdcc898f /repoze/bfg/traversal.py | |
| parent | 8e18ea4a560b4456ace86bdef6060304de053238 (diff) | |
| download | pyramid-81a833da2adff04d11b9228406bbc1528be65c64.tar.gz pyramid-81a833da2adff04d11b9228406bbc1528be65c64.tar.bz2 pyramid-81a833da2adff04d11b9228406bbc1528be65c64.zip | |
- A new method of the ``Configurator`` exists:
``set_request_factory``. If used, this method will set the factory
used by the :mod:`repoze.bfg` router to create all request objects.
- The ``Configurator`` constructor takes an additional argument:
``request_factory``. If used, this argument will set the factory
used by the :mod:`repoze.bfg` router to create all request objects.
- The ``Hooks`` narrative chapter now contains a section about
changing the request factory.
Diffstat (limited to 'repoze/bfg/traversal.py')
| -rw-r--r-- | repoze/bfg/traversal.py | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/repoze/bfg/traversal.py b/repoze/bfg/traversal.py index ce5b3225d..ce76f5be4 100644 --- a/repoze/bfg/traversal.py +++ b/repoze/bfg/traversal.py @@ -6,6 +6,7 @@ from zope.interface.interfaces import IInterface from repoze.lru import lru_cache from repoze.bfg.interfaces import IContextURL +from repoze.bfg.interfaces import IRequestFactory from repoze.bfg.interfaces import ITraverser from repoze.bfg.interfaces import VH_ROOT_KEY @@ -275,8 +276,9 @@ def traverse(model, path): if path and path[0] == '/': model = find_root(model) - request = Request.blank(path) reg = get_current_registry() + request_factory = reg.queryUtility(IRequestFactory, default=Request) + request = request_factory.blank(path) request.registry = reg traverser = reg.queryAdapter(model, ITraverser) if traverser is None: |
