diff --git a/evennia/web/admin/accounts.py b/evennia/web/admin/accounts.py
index 6f3f1aa9eb..2bae04d806 100644
--- a/evennia/web/admin/accounts.py
+++ b/evennia/web/admin/accounts.py
@@ -59,7 +59,7 @@ class AccountChangeForm(UserChangeForm):
help_text="This is the Python-path to the class implementing the actual account functionality. "
"You usually don't need to change this from the default.
"
"If your custom class is not found here, it may not be imported as part of Evennia's startup.",
- choices=adminutils.get_and_load_typeclasses(parent=AccountDB),
+ choices=lambda: adminutils.get_and_load_typeclasses(parent=AccountDB),
)
db_lock_storage = forms.CharField(
diff --git a/evennia/web/admin/objects.py b/evennia/web/admin/objects.py
index cb7e387e41..24397f9bf5 100644
--- a/evennia/web/admin/objects.py
+++ b/evennia/web/admin/objects.py
@@ -64,7 +64,7 @@ class ObjectCreateForm(forms.ModelForm):
f"
If you are creating a Character you usually need {settings.BASE_CHARACTER_TYPECLASS} "
"or a subclass of that.
If your custom class is not found in the list, it may not be imported "
"as part of Evennia's startup.",
- choices=adminutils.get_and_load_typeclasses(parent=ObjectDB))
+ choices=lambda: adminutils.get_and_load_typeclasses(parent=ObjectDB))
db_lock_storage = forms.CharField( label="Locks",
required=False,
diff --git a/evennia/web/admin/scripts.py b/evennia/web/admin/scripts.py
index 6d8ec117b0..2952f9b66f 100644
--- a/evennia/web/admin/scripts.py
+++ b/evennia/web/admin/scripts.py
@@ -23,7 +23,7 @@ class ScriptForm(forms.ModelForm):
label="Typeclass",
help_text="This is the Python-path to the class implementing the actual script functionality. "
"
If your custom class is not found here, it may not be imported as part of Evennia's startup.",
- choices=adminutils.get_and_load_typeclasses(
+ choices=lambda: adminutils.get_and_load_typeclasses(
parent=ScriptDB, excluded_parents=["evennia.prototypes.prototypes.DbPrototype"])
)