Package: plone.app.uuid
IntroductionThis package integrates the low-levelplone.uuidinto Plone-the-
application. In particular, it:Registers aportal_catalogindexer for theUIDindex that allows an
object’s UUID to be indexed.This name is intentionally chosen to be the same as the Archetypes UID()
attribute, which is already indexed by Plone. The effect is that the UID
catalog attribute/metadata is now generalised to all content that supports theplone.uuidprotocol.As of version 1.7,Products.Archetypesdepends onplone.uuidand
implements anIUUIDadapter suitable for Archetypes content. It also
uses theplone.uuidIUUIDGeneratorutility to generate UUIDs for
(new) content, although note that UUIDs generated by the pre-1.7 UUID
algorithm, whilst different, cannot collide with the UUIDs generated by
the defaultIUUIDGeneratorimplementation.It follows that theplone.uuidIUUIDadapter and@@uuidview are
now the preferred, generalised way to look up a UUID for an object.Registers a utility view,@@redirect-to-uuid. You can use this with
a URL like:http://example.org/some/path/@@redirect-to-uuid/b2dc6f7a-9d17-11df-8788-58b035f3cfa0This will then redirect to the object identified by that URL.Hint:You can use the@@uuidview fromplone.uuidto render a
UUID. In TAL, you can do something like:<a tal:attributes="href string:${portal_url}/@@redirect-to-uuid/${obj/@@uuid}">Click here</a>Provides several utility methods in theplone.app.uuid.utilsmodule:uuidToPhysicalPath(uuid)Returns the physical path (relative to the ZODB root) as a string of the
object with the given UUID, or None if it cannot be found.uuidToURL(uuid)Returns the absolute URL of the object with the given UUID, or None if it
cannot be found.uuidToObject(uuid)Returns the content object associated with the given UUID, or None if it
cannot be found.Please see theplone.uuidpackage for more details about how UUIDs are
generated and can be accessed.Changelog2.2.3 (2024-01-19)Internal:Update configuration files.
[plone devs] (7723aeaf)2.2.2 (2023-03-22)Internal:Update configuration files.
[plone devs] (b2d5d4a5)2.2.1 (2022-10-11)Bug fixes:Process the catalog queue before looking up in the catalog
[ale-rt] (#15)2.2.0 (2022-08-30)Bug fixes:Add optional security check for uuidToObject [anirudhhkashyap] (#13)2.1.0 (2021-12-29)New features:Speed upuuidToPhysicalPathanduuidToObject.
Do this by using an IndexQuery to only query the UID index.
Note: of the four functions inutils.py, onlyuuidToObjectchecks the security.
For the other functions, it is up to the caller to do this, if needed.
We may change this in the future, but for now the behavior should be the same as in previous versions.
[maurits] (#11)2.0.2 (2020-04-20)Bug fixes:Minor packaging updates. (#1)2.0.1 (2020-03-13)Bug fixes:Fix use case where UID to object is failing.
[rodfersou] (#8)Initialize towncrier.
[gforcada] (#2548)2.0.0 (2018-11-02)Breaking changes:Fix test that fails since it raises zExceptions.NotFound instead of zope.publisher.interfaces.NotFound.
(This makes the tests incompatible with Zope 2.13.)
[pbauer]Bug fixes:Fix deprecation warning on zope.site.hooks import.
[pbauer]1.2 (2017-07-03)New features:Remove unittest2 dependency
[kakshay21]1.1.3 (2017-02-12)Bug fixes:Fix test in Zope 4.
[davisagli]1.1.2 (2016-11-17)Bug fixes:Update code to follow Plone styleguide.
[gforcada]1.1.1 (2016-08-10)Fixes:Use zope.interface decorator.
[gforcada]1.1 (2014-02-19)Make the test setup independent from basic content types in the
PLONE_FIXTURE.
[timo]1.0 - 2011-05-13Release 1.0 Final.
[esteele]Add MANIFEST.in.
[WouterVH]1.0b2 - 2011-01-03Use user id instead of user name to fix tests.
[davisagli]1.0b1 - 2010-11-27Initial release