summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--pyramid/config/views.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/pyramid/config/views.py b/pyramid/config/views.py
index 0d6f3c43f..3a278a94f 100644
--- a/pyramid/config/views.py
+++ b/pyramid/config/views.py
@@ -1015,8 +1015,7 @@ class ViewsConfiguratorMixin(object):
def _apply_view_derivations(self, view, **kw):
d = pyramid.config.derivations
# These inner derivations have fixed order
- inner_derivers = [('mapped_view', (d.mapped_view, None)),
- ('rendered_view', (d.rendered_view, None))]
+ inner_derivers = [('mapped_view', (d.mapped_view, None))]
outer_derivers = [('predicated_view', (d.predicated_view, None)),
('attr_wrapped_view', (d.attr_wrapped_view, None)),]
@@ -1079,6 +1078,9 @@ class ViewsConfiguratorMixin(object):
def add_view_derivation(self, name, factory, default,
under=None,
over=None):
+ if under is None and over is None:
+ over = 'decorated_view'
+
factory = self.maybe_dotted(factory)
discriminator = ('view option', name)
intr = self.introspectable(
@@ -1115,6 +1117,8 @@ class ViewsConfiguratorMixin(object):
self.add_view_derivation(name, deriver, default=None, under=after)
after = name
+ self.add_view_derivation('rendered_view', d.rendered_view, default=None, under=pyramid.util.FIRST, over='decorated_view')
+
def derive_view(self, view, attr=None, renderer=None):
"""
Create a :term:`view callable` using the function, instance,