Skip to content

add dynamicforms draft

Bengfort requested to merge spike-separate-dynamic-form into master

This is a draft for @Abel's proposal from !293 (comment 3273). I tried to split out the main idea behind dynamic attributes and make it reusable.

Note that there are several features (most of them not yet implemented) that need to hook into dynamic attributes. Many of them are very specific to our project and should be kept out of the reusable app:

  • privacy level: Only show attributes for which the user's privacy level is sufficient.
  • filters: We need to be able to filter for all attributes. The label and formfield for filters may be different from the field itself (e.g. field is called "date of birth", but filter is called "age")
  • choices: We need to have fields with a predefined set of choices
  • translation: the labels and help texts need to be translatable. There are many existing solutions for this, and a reusable app should integrate with most of them.
  • versioning: we want to track the history of the schema
  • migrations: If the schema changes, the existing data needs to be migrated (either automatically or manually)
  • grouping: we want to be able to structure the fields somehow, e.g. in categories or a full blown tree

Merge request reports