Skip to main content

Table-like content for Plone

Project description

Easy storage of tabular data

collective.table is a replacement for 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 its data in the ZODB, however storage is pluggable and it’s easy to write storage adapters to have data stored in SQL, LDAP, etc.

collective.table is based on DataTables and jEditable jQuery plugins.

Developer documentation is available at


To install collective.table you simply add collective.table to the list of eggs in your buildout, run buildout and restart the Plone server. In Plone’s portal_quickinstaller you select collective.table and install it.

Now you can add a Table content-type and start adding your tabular data.


Upon adding a new table you have to specify which columns you would like. You do that by entering column names, one per line, into columns field. When you click save your table will be created, containing one initial row. At the moment, all columns are of type string.


Double-click on a cell of your choosing and enter something. Hitting Enter will save this value.

Add a new row

Click the Create a new row button and a new row will be appended, which you can edit to enter your data.

Deleting a row

Start by selecting a row by clicking on it. Then click the Delete this row button and this row will be deleted. You can select and delete multiple rows.


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.


1.1 (2012-06-18)

  • Restore form values in the request to string after processInputs converts them to unicode for z3c.form. [danjacka]

  • Force beforepost callback to hide spinner graphic when closing the popup. [danjacka]

  • Minor updates to buildout, documentation, tests. [danjacka]

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]

Project details

Download files

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

Source Distribution

collective.table-1.1.tar.gz (39.4 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page