diff options
| author | Michael Merickel <michael@merickel.org> | 2017-06-12 01:07:57 -0500 |
|---|---|---|
| committer | Michael Merickel <michael@merickel.org> | 2017-06-12 01:07:57 -0500 |
| commit | 72ca1352493ef5b9113090598608da0c0d49389a (patch) | |
| tree | b793c72b84cf8dbccd5bdfd76efc744581d6c93f | |
| parent | cdd0a86b46ecf0a16403ccf780c87f2c938b3e0c (diff) | |
| download | pyramid-72ca1352493ef5b9113090598608da0c0d49389a.tar.gz pyramid-72ca1352493ef5b9113090598608da0c0d49389a.tar.bz2 pyramid-72ca1352493ef5b9113090598608da0c0d49389a.zip | |
apply request extensions within invoke_subrequest itself
| -rw-r--r-- | pyramid/router.py | 29 |
1 files changed, 19 insertions, 10 deletions
diff --git a/pyramid/router.py b/pyramid/router.py index 7f3f9fbea..a02ff1715 100644 --- a/pyramid/router.py +++ b/pyramid/router.py @@ -192,13 +192,21 @@ class Router(object): """ request.registry = self.registry request.invoke_subrequest = self.invoke_subrequest - return self.invoke_request( - request, - _use_tweens=use_tweens, - _apply_extensions=True, - ) + extensions = self.request_extensions + if extensions is not None: + apply_request_extensions(request, extensions=extensions) + return self.invoke_request(request, _use_tweens=use_tweens) def make_request(self, environ): + """ + Configure a request object for use by the router. + + The request is created using the configured + :class:`pyramid.interfaces.IRequestFactory` and will have any + configured request methods / properties added that were set by + :meth:`pyramid.config.Configurator.add_request_method`. + + """ request = self.request_factory(environ) request.registry = self.registry request.invoke_subrequest = self.invoke_subrequest @@ -207,8 +215,12 @@ class Router(object): apply_request_extensions(request, extensions=extensions) return request - def invoke_request(self, request, - _use_tweens=True, _apply_extensions=False): + def invoke_request(self, request, _use_tweens=True): + """ + Execute a request through the request processing pipeline and + return the generated response. + + """ registry = self.registry has_listeners = self.registry.has_listeners notify = self.registry.notify @@ -224,9 +236,6 @@ class Router(object): try: try: - extensions = self.request_extensions - if _apply_extensions and extensions is not None: - apply_request_extensions(request, extensions=extensions) response = handle_request(request) if request.response_callbacks: |
