archetypes.schemaextender 2.1.1

Dynamically extend Archetypes schemas with named adapters
archetypes.schemaextender is a Plone product that allows you to modify an Archetypes schema, using simple adapters. This can be used to add new fields, reorder fields and fieldsets or make other changes.

The most common use of schema extension is to allow add-on products to enhance standard Plone content types, for example by adding an option that can be set to toggle special behaviour.

schemaextender hooks into the Archetypes framework by registering an ISchema adapter for BaseContent and BaseFolder, making it responsible for providing the schema for all types derived from those classes. This includes all standard Plone content types. Since only one ISchema adapter can be active schemaextender provides its own mechanism to modify schemas using named adapters. Named adapters are allowing to register more than one schemaextender per adapted interface.

There are three types of adapters available:

* ISchemaExtender: using this adapter you can add new fields to a schema.

* IOrderableSchemaExtender: this adapters makes it possible to both add new fields and reorder fields. This is more costly than just adding new fields.

* IBrowserLayerAwareExtender: this adapters are making use of plone.browserlayer, so that the extender is only available if a layer is registered.

* ISchemaModifier: this is a low-level hook that allows direct manipulation of the schema. This can be very dangerous and should never be used if one does not know exactly what she/he is doing!

The adapter types are documented in the '''' file in archetypes.schemaextender.

last updated on:
July 5th, 2011, 6:53 GMT
license type:
GPL (GNU General Public License) 
developed by:
Florian Schulze
ROOT \ Internet \ Plone Extensions
Download Button

In a hurry? Add it to your Download Basket!

user rating



Rate it!
What's New in This Release:
  • Acquire request object via local site hook if object is not acquisition-wrapped (in ``cachingInstanceSchemaFactory``). This fixes caching issues with objects rendered using DTML. Note that this is likely a bug in the ``DocumentTemplate`` code. Ideally, the issue should be resolved there. [malthe]
read full changelog

Add your review!