Provides through-the-web editing of a zope 3 schema/interface.
Project description
Introduction
plone.schemaeditor provides a through-the-web interface for modifying Zope 3 schemata (interfaces).
Currently there is support for:
adding and removing fields
editing attributes of existing fields
reordering fields
renaming fields
plone.schemaeditor only handles the actual schema editing. To be useful, it requires some integration code to take care of the following pieces:
traversing to a schema that is used as the context of the editor
persisting schema changes across Zope restarts
See plone.app.dexterity (along with plone.dexterity and plone.supermodel) for one approach to this integration.
The following field types (from zope.schema) are currently supported:
TextLine
Text
Int
Float
Bool
Password
Datetime
Choice (with simple list of values)
List of Choice (with simple list of values)
Third-party packages can make additional field types available by registering new IFieldFactory utilities.
Dependencies
Zope 2
z3c.form
plone.z3cform
Despite the namespace, Plone is not a dependency.
Note: This package is released under a BSD license. Contributors, please do not add dependencies on GPL code.
Credits
Author:
David Glick (dglick@gmail.com)
Thanks to:
Nathan Van Gheem
Martin Aspeli
Alex Limi
Ross Patterson
Steve McMahon
Changelog
1.0.1 - 2011-05-20
Relicense under the BSD license. See http://plone.org/foundation/materials/foundation-resolutions/plone-framework-components-relicensing-policy [davisagli]
On multiple choice fields (List of Choice), read/write attributes other than values in the correct place (on the List rather than its value_type Choice). [davisagli]
Remove unneeded dependency on plone.i18n. [davisagli]
1.0 - 2011-04-30
In addition to the normal object events raised when fields are added, edited, and removed, raise a SchemaModifiedEvent on the schema context. This greatly simplifies writing code to serialize schema changes, and makes it possible to track of the schema origin so that we know where to serialize it. [davisagli]
Support non-ASCII characters in vocabularies for Choice fields. [davisagli]
Change js event used to dynamically set id from title from keyup to change; autocompletion does not raise a keyup event, but does fire change. [smcmahon]
jslintify schemaeditor.js [smcmahon]
Honor cancel button in field editor popup. [smcmahon]
1.0b2 - 2011-01-22
Add another possible base to try for our fixed IDatetime, since plone.app.z3cform may change which one takes precedence. [davisagli]
Default to adding Textline fields. [davisagli]
1.0b1 - 2010-04-18
Added overlay support to the field edit screens. [davisagli, limi]
Revamped UI to show WYSIWYG representation of fields. [davisagli, limi]
Removed the JavascriptFormWrapper. [davisagli]
Major package cleanup. [davisagli]
Omit the ‘required’ and ‘missing_value’ fields for Bool fields. [davisagli]
Add the ability to define vocabularies of simple TextLine values. Both single and multiple select fields are provided. [rossp]
Override base field interfaces to get the correct field types for the default and missing_value fields, rather than using the MetaFieldWidgetFactory. [rossp]
Make sure that normalized ids for new fields use _ instead of -, so that they can be accessed without using getattr. [davisagli]
Fix issue with moving fields to position 0 in a schema. [davisagli]
List the available field type vocabulary alphabetically. [davisagli]
No longer provide a field factory for zope.schema.Bytes, since plone.namedfile provides a better file field and now registers its own field factories. [davisagli]
Fix inline validation for the field edit form. [davisagli]
Added ReadOnlySchemaListing for listing fields without making them editable. [davisagli]
CSS tweaks [davisagli]
1.0a2 - 2009-07-12
Changed API methods and arguments to mixedCase to be more consistent with the rest of Zope. This is a non-backwards-compatible change. Our profuse apologies, but it’s now or never. :-/
If you find that you get import errors or unknown keyword arguments in your code, please change names from foo_bar too fooBar, e.g. add_field() becomes addField(). [optilude]
1.0a1 - 2009-05-23
Initial release
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.