summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris McDonough <chrism@plope.com>2012-07-29 13:20:32 -0400
committerChris McDonough <chrism@plope.com>2012-07-29 13:20:32 -0400
commit8e45c9df2bf35428f47e106f932d996f18b45395 (patch)
tree7be9257f3226e64245a8121c8509979cd6f1cfde
parent440e2e7d94648973a3f9b5aa6136792d02ae1e9e (diff)
parentc52e649c6773a99d6077f28ebe0f505d32e72ba6 (diff)
downloadpyramid-8e45c9df2bf35428f47e106f932d996f18b45395.tar.gz
pyramid-8e45c9df2bf35428f47e106f932d996f18b45395.tar.bz2
pyramid-8e45c9df2bf35428f47e106f932d996f18b45395.zip
Merge branch 'master' of git://github.com/adroullier/pyramid into adroullier-master
-rw-r--r--pyramid/config/views.py12
1 files changed, 7 insertions, 5 deletions
diff --git a/pyramid/config/views.py b/pyramid/config/views.py
index 9e9b5321b..4354b4691 100644
--- a/pyramid/config/views.py
+++ b/pyramid/config/views.py
@@ -276,11 +276,13 @@ class ViewDeriver(object):
if not predicates:
return view
def predicate_wrapper(context, request):
- if all((predicate(context, request) for predicate in predicates)):
- return view(context, request)
- view_name = getattr(view, '__name__', view)
- raise PredicateMismatch(
- 'predicate mismatch for view %s' % view_name)
+ for predicate in predicates:
+ if not predicate(context, request):
+ view_name = getattr(view, '__name__', view)
+ raise PredicateMismatch(
+ 'predicate mismatch for view %s (%s)' % (
+ view_name, predicate.__text__))
+ return view(context, request)
def checker(context, request):
return all((predicate(context, request) for predicate in
predicates))