mirror of
https://github.com/cisagov/manage.get.gov.git
synced 2025-05-29 17:00:02 +02:00
First Draft ADR
This commit is contained in:
parent
9e0c11129a
commit
0fcf7de546
1 changed files with 40 additions and 0 deletions
40
docs/architecture/decisions/0021-django-admin.md
Normal file
40
docs/architecture/decisions/0021-django-admin.md
Normal file
|
@ -0,0 +1,40 @@
|
|||
# 21. Use Django Admin for Application Management
|
||||
|
||||
Date: 2023-06-22
|
||||
|
||||
## Status
|
||||
|
||||
Accepted
|
||||
|
||||
## Context
|
||||
|
||||
CISA needs a way to perform administrative actions to manage the new get.gov application as well as the .gov domain
|
||||
application requests submitted. Analysts need to be able to view, review, and approve domain applications. Other
|
||||
dashboard views, reports, searches (with filters and sorting) are also highly desired.
|
||||
|
||||
## Decision
|
||||
|
||||
Use Django's [Admin](https://docs.djangoproject.com/en/4.2/ref/contrib/admin/) site for administrative actions. Django
|
||||
Admin gives administrators all the powers we anticipate needing (and more), with relatively little overhead on the
|
||||
development team.
|
||||
|
||||
## Consequences
|
||||
|
||||
Django admin provides the team with a _huge_ head start on the creation of an administrator portal.
|
||||
|
||||
While Django Admin is highly customizable, development will be constrained by what is possible within Django Admin.
|
||||
|
||||
We anticipate that this will, overall, speed up the time to MVP compared to building a completely custom solution.
|
||||
|
||||
Django Admin offers omnipotence for administrators out of the box, with direct access to database objects. This includes
|
||||
the ability to put the application and its data in an erroneous state, based on otherwise normal business rules/logic.
|
||||
|
||||
In contrast to building an admin interface from scratch where development activities would predominantly
|
||||
involve _building up_, leveraging Django Admin will require carefully _pairing back_ the functionalities available to
|
||||
users such as analysts.
|
||||
|
||||
While we anticipate that Django Admin will meet (or even exceed) the user needs that we are aware of today, it is still
|
||||
an open question whether Django Admin will be the long-term administrator tool of choice. A pivot away from Django Admin
|
||||
in the future would of course mean starting from scratch at a later date, and potentially juggling two separate admin
|
||||
portals for a period of time while a custom solution is incrementally developed. This would result in an overall
|
||||
_increase_ to the total amount of development time invested in the administrator portal.
|
Loading…
Add table
Add a link
Reference in a new issue