Merge pull request #38466 from kaulith/fix/role-profile-not-visible-in-user-list-view

fix: sync role_profile_name for user list view display
This commit is contained in:
Ejaaz Khan 2026-04-18 23:50:11 +05:30 committed by GitHub
commit 843e396b44
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -232,6 +232,7 @@ class User(Document):
self.check_enable_disable()
self.ensure_unique_roles()
self.ensure_unique_role_profiles()
self.sync_role_profile_name()
self.remove_all_roles_for_guest()
self.validate_username()
self.remove_disabled_roles()
@ -277,11 +278,11 @@ class User(Document):
def move_role_profile_name_to_role_profiles(self):
"""This handles old role_profile_name field if programatically set.
This behaviour will be remoed in future versions."""
This behaviour will be removed in future versions."""
if not self.role_profile_name:
return
current_role_profiles = [r.role_profile for r in self.role_profiles]
current_role_profiles = {r.role_profile for r in self.role_profiles}
if self.role_profile_name in current_role_profiles:
self.role_profile_name = None
return
@ -296,6 +297,10 @@ class User(Document):
self.append("role_profiles", {"role_profile": self.role_profile_name})
self.role_profile_name = None
def sync_role_profile_name(self):
"""Keep deprecated role_profile_name in sync for list view display."""
self.role_profile_name = self.role_profiles[0].role_profile if self.role_profiles else None
def validate_allowed_modules(self):
if self.module_profile:
module_profile = frappe.get_doc("Module Profile", self.module_profile)