locateChild(self,
ctx,
segments)
Locate a child page of this one. ctx is a nevow.context.PageContext
representing the parent Page, and segments is a tuple of each element
in the URI. An tuple (page, segments) should be returned, where page is
an instance of nevow.rend.Page and segments a tuple representing the
remaining segments of the URI. If the child is not found, return
NotFound instead.
locateChild is designed to be easily overridden to perform fancy
lookup tricks. However, the default locateChild is useful, and looks
for children in three places, in this order:
-
in a dictionary, self.children
-
a member of self named child_<childname>. This can be
either an attribute or a method. If an attribute, it should be an
object which can be adapted to IResource. If a method, it should
take the context and return an object which can be adapted to
IResource.
-
by calling self.childFactory(ctx, name). Name is a single string
instead of a tuple of strings. This should return an object that
can be adapted to IResource.
-
- Overrides:
nevow.rend.FreeformChildMixin.locateChild
|