diff options
author | Bryan Newbold <bnewbold@robocracy.org> | 2020-07-30 20:30:57 -0700 |
---|---|---|
committer | Bryan Newbold <bnewbold@robocracy.org> | 2020-07-30 23:45:30 -0700 |
commit | bedf147fecf7134fd22ea0ca7c94c5b7d4554416 (patch) | |
tree | e0a6c45544b21b22b5e5ba77bc88bf3d718aa1aa /proposals | |
parent | a928882cb14eca8c50919f1af7489831b8341569 (diff) | |
download | fatcat-bedf147fecf7134fd22ea0ca7c94c5b7d4554416.tar.gz fatcat-bedf147fecf7134fd22ea0ca7c94c5b7d4554416.zip |
TOML editing proposal
Diffstat (limited to 'proposals')
-rw-r--r-- | proposals/20200729_toml_editing.md | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/proposals/20200729_toml_editing.md b/proposals/20200729_toml_editing.md new file mode 100644 index 00000000..bdb8c12f --- /dev/null +++ b/proposals/20200729_toml_editing.md @@ -0,0 +1,43 @@ + +status: implemented + +TOML Editing of Entity Metadata +=============================== + +Goal is to enable full-power editing through the web interface, of the raw +entity schema and "extra" metadata, for all entity types. + +A side-effect of this should be enabling redirect editing between entities, as +well as "undeleting" or other state transitions (other than deletion). + +Plan: + +- find and add a toml transform library to pipenv deps. preferably with good + human-readable parsing errors +- TOML/JSON transform helpers, with tests +- implement generic TOML entity editing view (HTML) +- implement generic TOML entity editing endpoints + +Some metadata fields are removed before displaying TOML to edit. For example, +the ident, revision, and redirect fields for 'active' entities. It should still +be possible to do redirects by entering only the redirect field in the TOML +form. + +## UI Integration + +For existing edit forms, add a link to the "advanced" editing option. + +For endpoints without a form-based option (yet), do an HTTP redirect to the +TOML editing option. + +## New Webface Views + +`/<entity>/create/toml` + GET: display template to be filled in + POST: form submit for creation +`/<entity>/<ident>/edit/toml` + GET: transform entity for editing + POST: form submit for edit +`/editgroup/<editgroup_id>/<entity>/<ident>/edit/toml` + GET: transform entity for editing + POST: form submit for edit |