[Zope] restrictedTraverse([''])
Lennart Regebro
regebro at gmail.com
Tue May 24 05:59:50 EDT 2005
On 5/24/05, Hong Yuan <hongyuan at homemaster.cn> wrote:
> I happened to find that obj.restrictedTraverse(['']) returns the
> application object, instead of the object itself. This is quite
> unexpected, as both obj.restrictedTraverse('') and
> obj.restrictedTraverse([]) returns the object itself.
>
> Is this a bug or a feature?
RestrictedTraverse on a list will assume it is a path of ids.
restrictedTraverse on a string will assume it is a URL.
A path of ids that starts with '' is a absolute path, just like a URL
that starts with '/'. So, the path list [''] means the
root/application object, just like '/' means the root/application
object.
However [] is an empty path, and is therefore the same as the URL ''.
So, the above behaviour is expected and as defined.
--
Lennart Regebro, Nuxeo http://www.nuxeo.com/
CPS Content Management http://www.cps-project.org/
More information about the Zope
mailing list