Developer documentation for collective.table

Project title:collective.table
Latest version:0.3
Project page:


This is a Plone 4 add-on project for storing tabular data inside Plone, replacing the “store equipment lists, book loans, etc. in Excel files and upload to Plone”. It’s a list of items where members can add/edit columns and rows and of course data. By default, collective.table stores it’s data in the ZODB, however storage is pluggable and it’s easy to write storage adapters to have data stored in SQL, LDAP, etc. It is based on DataTables and jEditable jQuery plugins.

Quick start

If you have a Linux or OS X system already capable of running Plone then a quick start with collective.table is as follows:

$ git checkout
$ cd collective.table/
$ virtualenv -p python2.6 --no-site-packages ./
$ bin/python
$ bin/buildout
$ bin/instance fg


1.0.1 (2011-08-22)

  • Newline was missing in Future.rst. [zupo]

1.0 (2011-08-22)

  • Added support for localizations. [zupo]
  • More cleanup. [zupo]
  • Added support for source configuration view. [MJ]
  • Added project to [zupo]
  • Refactored row deletion handling. [MJ]
  • Support for multiple tables is back. [MJ]
  • Move the versions section to re-enable the mr.developer entries. [MJ]
  • Refactored usage of storage into source to avoid confusing them with Archetypes storages. [zupo]
  • Save source name per context, not globally on the field. [zupo]
  • Split manageable flag into editable, sortable and queryable flags. [zupo]
  • Added shebangs and module-level docstrings. [zupo]
  • Added a script to do pre-commit checks. [zupo]
  • PEP8 and PyFlakes cleanup. [zupo]
  • Added Sphinx documentation. [zupo]

0.3alpha (2011-07-20)

  • Fixed a bug with deleting rows. [zupo]

0.2alpha (2011-07-20)

  • Renamed README.txt to README.rst and added README as a soft-link. [zupo]

0.1alpha (2011-07-19)

  • Initial release. [zupo]


Current status

At this point, collective.table offers basic functionalities and is usable. It can be used as an out-of-the-box product for end-users or as a third-party Archetypes widget for custom content-types.


Being pluggable as it is, we expect more people to use it with their own content-types on their own custom data sources. Hopefully some that code will propagate back into the community so we can have multiple source possibilities in the future. UI could also use some more love.


  • Martijn Pieters (Jarn AS) is the original author.
  • Nejc Zupan (NiteoWeb Ltd.) drove the code towards the first few releases as part of his Google Summer of Code project.

Indices and tables