Skip to content

Deleting tables

The delete page at /admin/tables/delete drops a table definition with DeleteTable. Because the drop is CASCADE and takes the profile with it when this was its last table, a mis-click must not be enough: the table’s name has to be typed back exactly.

The form carries:

  • profile and table — hidden fields identifying the table;
  • confirm_table_name — the name typed back by the user.

If the typed name does not equal the table’s name, the write is refused with 422 and the message “Type the table’s name exactly to confirm the deletion.” No backend call is made.

On success the table (and its physical table) is gone, so there is no page to return to. The handler redirects to the admin panel with the profile still selected:

/admin?profile=<name>

If the profile went with the table, the admin panel falls back to its bare state.

System tables are backend-managed, so the delete panel is not offered for them; the server refuses the write regardless.