From 4f7bfed0080daf5fa889d9b1edea56d7200ad5c6 Mon Sep 17 00:00:00 2001 From: Tarashish Mishra Date: Sat, 16 May 2026 21:30:40 +0530 Subject: [PATCH 1/2] pre-select saved user options on the spawn form --- kubespawner/spawner.py | 4 +++- kubespawner/templates/form.html | 21 ++++++++++++++++++++- 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/kubespawner/spawner.py b/kubespawner/spawner.py index 8e0bb0d9f..98163f132 100644 --- a/kubespawner/spawner.py +++ b/kubespawner/spawner.py @@ -3487,7 +3487,9 @@ def _render_options_form(self, profile_list): profile_form_template = env.from_string(self.profile_form_template) else: profile_form_template = env.get_template("form.html") - return profile_form_template.render(profile_list=profile_list) + return profile_form_template.render( + profile_list=profile_list, user_options=self.user_options or {} + ) async def _render_options_form_dynamically(self, current_spawner): """ diff --git a/kubespawner/templates/form.html b/kubespawner/templates/form.html index 180e8752e..583c26aa2 100644 --- a/kubespawner/templates/form.html +++ b/kubespawner/templates/form.html @@ -9,7 +9,9 @@ name="profile" id="profile-item-{{ profile.slug }}" value="{{ profile.slug }}" - {% if profile.default %}checked{% endif %} /> + {% if user_options.profile == profile.slug %}checked + {% elif not user_options.profile and profile.default %}checked + {% endif %} />

{{ profile.display_name }}

@@ -53,6 +55,7 @@

{{ profile.display_name }}

{%- endfor %}