Skip to content. | Skip to navigation

Personal tools
Log in
Sections
You are here: Home Classes Creating Plone Content Types with Dexterity

Creating Plone Content Types with Dexterity

This two-day class covers the creation of new content types in Plone 4.x using the Dexterity framework.

When

May 20th and 21st, 2012

Where

Penn State University, site of Plone Symposium East, which follows.

Instructor

Steve McMahon, Plone core and add-on developer. Steve is the creator of PloneFormGen and maintainer of the Unified and OS X Plone installers. Steve also wrote several chapters of Practical Plone and is an experienced speaker and instructor.

How Much?

$350 Early Bird, $395 Standard Registration. Register at EventBrite.

Description

Creating new content types in Plone is easier than ever. Dexterity, Plone's new content-type development framework, allows you to create content types through-the-web, in add-on products, or even to move back and forth between the two. Dexterity will be built into Plone 4.3+, but is ready to use now in Plone 4 (or 3.3.5). The course will focus on practical use of Dexterity, with just enough theory and history to help students understand how Dexterity fits into Plone.

Topics Covered

  • Installing Dexterity for use in Plone 3.3.5 or 4.x.
  • Creating new content types through the web or by schemas in Python.
  • Dexterity field types, widgets and behaviors.
  • Making add-on products to deploy Dexterity content types.
  • Adding custom validators, methods and properties via Python.
  • Creating custom views of content.
  • Implementing containment and references.
  • Custom security and workflow for content types and fields.
  • Schemas, models, the roles of the Zope Component Architecture and Grok.
  • When Dexterity is practical, and when it's not.

The class will combine lecture and exercises.

Audience

Integrators or programmers who wish to develop new content types for Plone.

Prerequisites

Good knowledge of the functionality of Plone and its built-in content types. Basic knowledge of Python, HTML and XML. Ability to work in a command-line environment on your platform of choice.