Idea: App (or just model) for user preferences
Companion issue for https://github.com/Uninett/Argus-frontend/issues/448: "Idea: On the incidents-page, allow adding columns from tags".
A model with OneToOneField to an argus_auth.User with fields for user preferences. We could also put a json-field on the user but because the user is loaded often and all over the place this might negatively affect memory usage and loading speed. Also, such preferences are only relevant for the frontend, so human users and not source systems or agents.
Django has a preferred way of doing it: https://docs.djangoproject.com/en/3.2/topics/auth/customizing/#extending-the-existing-user-model
Here's an example of how to add a profile automatically: https://ordinarycoders.com/django-custom-user-profile#Creating%20a%20profile%20model
We wouldn't want to create a userprofile for all users though, only end-users using the frontend.
We could also have a magical method on the user-object that creates a profile if one does not exist on first access.