diff options
| author | Chris McDonough <chrism@agendaless.com> | 2009-09-16 18:25:31 +0000 |
|---|---|---|
| committer | Chris McDonough <chrism@agendaless.com> | 2009-09-16 18:25:31 +0000 |
| commit | 470737a5f5a7d86b809b260b9dbc09f266d4b69c (patch) | |
| tree | a3df44da970fe2e8db956b105acfc228f0319c9c /repoze/bfg/zcml.py | |
| parent | 6eca545a5571618bd7498fa68571d8e0e21fecf1 (diff) | |
| download | pyramid-470737a5f5a7d86b809b260b9dbc09f266d4b69c.tar.gz pyramid-470737a5f5a7d86b809b260b9dbc09f266d4b69c.tar.bz2 pyramid-470737a5f5a7d86b809b260b9dbc09f266d4b69c.zip | |
- The ``repoze.bfg.testing.registerDummyRenderer`` API has been
deprecated in favor of
``repoze.bfg.testing.registerTemplateRenderer``. A deprecation
warning is *not* issued at import time for the former name; it will
exist "forever".
- The ``repoze.bfg.templating.renderer_from_cache`` function has been
moved to ``repoze.bfg.renderer.template_renderer_factory``. This
was never an API, but code in the wild was spotted that used it. A
deprecation warning is issued at import time for the former.
- Better error message when a wrapper view returns None.
Diffstat (limited to 'repoze/bfg/zcml.py')
| -rw-r--r-- | repoze/bfg/zcml.py | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/repoze/bfg/zcml.py b/repoze/bfg/zcml.py index 94bb7371d..a9a6a95a0 100644 --- a/repoze/bfg/zcml.py +++ b/repoze/bfg/zcml.py @@ -182,7 +182,7 @@ def view( def register(): derived_view = derive_view(view, permission, predicates, attr, renderer, - wrapper) + wrapper, name) r_for_ = for_ r_request_type = request_type if r_for_ is None: @@ -252,15 +252,15 @@ def forbidden(_context, view): view_utility(_context, view, IForbiddenView) def derive_view(original_view, permission=None, predicates=(), attr=None, - renderer=None, wrapper_viewname=None): + renderer=None, wrapper_viewname=None, viewname=None): mapped_view = map_view(original_view, attr, renderer) - owrapped_view = owrap_view(mapped_view, wrapper_viewname) + owrapped_view = owrap_view(mapped_view, viewname, wrapper_viewname) secured_view = secure_view(owrapped_view, permission) debug_view = authdebug_view(secured_view, permission) derived_view = predicate_wrap(debug_view, predicates) return derived_view -def owrap_view(view, wrapper_viewname): +def owrap_view(view, viewname, wrapper_viewname): if not wrapper_viewname: return view def _owrapped_view(context, request): @@ -268,7 +268,13 @@ def owrap_view(view, wrapper_viewname): request.wrapped_response = response request.wrapped_body = response.body request.wrapped_view = view - return render_view_to_response(context, request, wrapper_viewname) + wrapped_response = render_view_to_response(context, request, + wrapper_viewname) + if wrapped_response is None: + raise ValueError( + 'No wrapper view named %r found when executing view named %r' % + (wrapper_viewname, viewname)) + return wrapped_response decorate_view(_owrapped_view, view) return _owrapped_view |
