Child pages
  • Best practices on how to set up pages with ConfiForms

This is the documentation for ConfiForms Server/Data Center app

However, this might also work for ConfiForms cloud and in most cases it does. But please see this page to understand the differences between server and cloud versions of the ConfiForms app.

Quite often we have been asked on sharing the best practices on setting up the pages with ConfiForms Forms.

Here are some tips from us:

  • Make sure you understand the differences between definitions and views and get yourself familiar with ConfiForms macros, see ConfiForms app detailed view over the plugin macros
  • Have one page per form (definition)
  • Have views (TableView, CardView, etc) and even Form views (Registrations Control macros) on separate pages. Split from pages storing form configurations (ConfiForms Form Definition) (only have form views on the same page with the form definition when you want to reuse this form view layout on different pages)
  • Page hierarchy? Make sure your page with the form definition macros is the "deepest child", as this way you can restrict the permissions as needed. It is a bad practice to put pages with views as child pages of the page with form definition macros. Why? because view restrictions are inherited  (see also Confluence page permissions and ConfiForms)
  • Consider having a separate space dedicated to ConfiForms form definitions - this way you can restrict creation of new forms to certain spaces only (configuration option in ConfiForms app configuration), which you can then control with access restrictions
  • Use How to troubleshoot and debug ConfiForms IFTTT rules execution to understand how and what gets executed on form submit when you try to set up new forms with many post functions (ConfiForms IFTTTs)
  • ConfiForms IFTTTs - make sure you have specified good conditions when they should run or even catching a "transition" in the condition expression - see hasChanged() in Virtual functions
  • When setting up views over your data consider using paging (defaults to 500 records, but consider setting it to smaller value so ConfiForms does not render too much HTML and is faster)
  • When using Jira fields, consider setting up fields to load (parameter on the field definition macro for JIra/Jira multi-select fields) to reduce loading of unnecessary data and speeding things up
  • No labels