handle views correctly that are directly provided by a specialized traverser
git-svn-id: svn://svn.cy55.de/Zope3/src/loops/trunk@3419 fd906abe-77d9-0310-91a1-e0d9ade77398
This commit is contained in:
parent
634e0f78d0
commit
cfde11670a
2 changed files with 4 additions and 4 deletions
|
@ -104,7 +104,7 @@ class Classifier(AdapterBase):
|
|||
message = u'Assigning: %s %s %s'
|
||||
else:
|
||||
message = u'Already assigned: %s %s %s'
|
||||
self.log(message % (resource.title, predicate.title, concept.title), 5)
|
||||
self.log(message % (resource.title, predicate.title, concept.title), 4)
|
||||
|
||||
def log(self, message, level=5):
|
||||
if level >= self.logLevel:
|
||||
|
|
|
@ -26,6 +26,7 @@ from zope.app.container.traversal import ItemTraverser
|
|||
from zope.cachedescriptors.property import Lazy
|
||||
from zope import component
|
||||
from zope.component import adapts
|
||||
from zope.publisher.browser import BrowserView
|
||||
from zope.publisher.interfaces import NotFound, IPublishTraverse
|
||||
|
||||
from loops.common import adapted
|
||||
|
@ -67,15 +68,14 @@ class NodeTraverser(ItemTraverser):
|
|||
traverser = IPublishTraverse(adapted(self.context.target), None)
|
||||
if traverser is not None:
|
||||
target = traverser.publishTraverse(request, name)
|
||||
if isinstance(target, BrowserView):
|
||||
return target
|
||||
if target is not None:
|
||||
viewAnnotations['target'] = target
|
||||
tv = component.getMultiAdapter((target, request), name='layout')
|
||||
viewAnnotations['targetView'] = tv
|
||||
return self.context
|
||||
obj = None
|
||||
# for name, tr in component.getAdapters(self.context, IPublishTraverse):
|
||||
# if name:
|
||||
# obj = tr.publishTraverse(request, name)
|
||||
if obj is None:
|
||||
try:
|
||||
obj = super(NodeTraverser, self).publishTraverse(request, name)
|
||||
|
|
Loading…
Add table
Reference in a new issue