Skip to main content

Plone integration for the basic plone.uuid package

Project description

Introduction

This package integrates the low-level plone.uuid into Plone-the- application. In particular, it:

  • Registers a portal_catalog indexer for the UID index 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 the plone.uuid protocol.

    As of version 1.7, Products.Archetypes depends on plone.uuid and implements an IUUID adapter suitable for Archetypes content. It also uses the plone.uuid IUUIDGenerator utility 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 default IUUIDGenerator implementation.

    It follows that the plone.uuid IUUID adapter and @@uuid view 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-58b035f3cfa0
    

    This will then redirect to the object identified by that URL.

    Hint: You can use the @@uuid view from plone.uuid to 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 the plone.app.uuid.utils module:

    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 the plone.uuid package for more details about how UUIDs are generated and can be accessed.

Changelog

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-13

  • Release 1.0 Final. [esteele]
  • Add MANIFEST.in. [WouterVH]

1.0b2 - 2011-01-03

  • Use user id instead of user name to fix tests. [davisagli]

1.0b1 - 2010-11-27

  • Initial release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for plone.app.uuid, version 2.0.0
Filename, size File type Python version Upload date Hashes
Filename, size plone.app.uuid-2.0.0-py2-none-any.whl (7.6 kB) File type Wheel Python version py2 Upload date Hashes View hashes
Filename, size plone.app.uuid-2.0.0.tar.gz (14.5 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page