diff --git a/src/registrar/admin.py b/src/registrar/admin.py index 85bdf9c1b..e783ff1a6 100644 --- a/src/registrar/admin.py +++ b/src/registrar/admin.py @@ -660,6 +660,13 @@ class DomainApplicationAdmin(ListHeaderAdmin): kwargs["queryset"] = models.Website.objects.all().order_by("website") # Sort websites return super().formfield_for_manytomany(db_field, request, **kwargs) + def formfield_for_foreignkey(self, db_field, request, **kwargs): + # Removes invalid investigator options from the investigator dropdown + if db_field.name == "investigator": + kwargs["queryset"] = User.objects.filter(is_staff=True) + return db_field.formfield(**kwargs) + return super().formfield_for_foreignkey(db_field, request, **kwargs) + def get_queryset(self, request): """Queryset reimplementation to order the table alphabetically""" query_set = super().get_queryset(request) diff --git a/src/registrar/models/domain_application.py b/src/registrar/models/domain_application.py index 12eda4caf..1ca749c84 100644 --- a/src/registrar/models/domain_application.py +++ b/src/registrar/models/domain_application.py @@ -5,6 +5,7 @@ import logging from django.apps import apps from django.db import models +from django.forms import ValidationError from django_fsm import FSMField, transition # type: ignore from registrar.models.domain import Domain