Skip to main content

A flexible form to edit selected fields of a content type.

Project description

Latest Version Egg Status License


A view to edit selected fields of a content type.


  • Useable by simply calling a view with a the fields you want to edit as query-string-parameters

  • Select the field or fields you want to edit

  • For each field you can choose between input, display and hidden

  • Uses the same widgets and validators as the default edit-form

  • Respects schema-hints like field-permissions, invariants and widgets

  • Nice to use in modals/popups fo allow editing one ore more fields (but not all)

Use it by adding a link to the view @@field_edit_form and pass the fiels you want to edit as a query-string with up to three parameters separated by a “:” for each field.


Edit the text of a document:


Edit the fields title and subjects:


Display the text and edit the publishing date:


Render a link to edit the title in a modal:

<a href="${python:context.absolute_url()}/field_edit_form?fields=IDublinCore.title"
   data-pat-plone-modal='{"actionOptions": {"reloadWindowOnClose": false, "redirectOnResponse": true, "disableAjaxFormSubmit": true},
                          "buttons": ".formControls > button"'>
    Edit the Title in a modal

Edit multiple fields:

<a href="${python:context.absolute_url()}/@@field_edit_form?fields=field1&amp;fields=field2&amp;fields=field3"
    Edit some fields.

Display one field, edit another”

<a href="${python:context.absolute_url()}/@@field_edit_form?fields=field1:display&amp;fields=field2"
    Edit one field, display another.

Hide the label:

<a href="${python:context.absolute_url()}/@@field_edit_form?fields=field1::0"
    Edit one field, display another.

Add a hidden field:

<a href="${python:context.absolute_url()}/@@field_edit_form?fields=field1:hidden&amp;fields=field2"
    Edit one field, display another.

Behavior-fields need to be prefixed with the Behavior:

<a href="${python:context.absolute_url()}/@@field_edit_form?fields=IBasic.title"
    Edit one field, display another.

Supported Versions

collective.fieldedit is tested in Plone 5.1, 5.2 and 6.


Install collective.fieldedit by adding it to your buildout:



eggs =

and then running bin/buildout

Then got to the add-on controlpanel (/prefs_install_products_form) to enable it.



The project is licensed under the GPLv2.


1.0 (2022-06-25)

  • Additional Markup for Plone 6.0 (Bootstrap 5) [jensens]

  • Formatted with Black/isort according to Plone standards. [jensens]

  • Add support for Python 3, Plone 5.2 and 6. [pbauer]

1.0a2 (2018-08-04)

  • Fix redirect and remaining webdav locks on cancel (#1) [pbauer]

1.0a1 (2017-10-10)

  • Initial release. [pbauer]

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.fieldedit-1.0.tar.gz (23.1 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