Можно ли в django изменить имя verbose модели администратора на основе входа группы пользователей?
Я знаю о метатеге Model Meta tag для указания verbose_name, verbose_name_plural. Но мне нужно, чтобы в модели администрирования имя verbose было основано на логине пользователя в зависимости от группы, в которой он находится. Как мы можем переопределить этот атрибут?
Лучшим способом сделать это будет переопределение AdminSite в файле admin.py
Вот пример, как это сделать
from django.contrib.admin import AdminSite
class MyAdminSite(AdminSite):
def each_context(self, request):
already_dict = super().each_context(request)
for name in already_dict['available_apps']:
# here you can access current user as request.user
# you can change model name with name['models'][0]['name'] = 'some name you want'
print(name['models'])
return already_dict
admin.site = MyAdminSite()
admin.site.register(YourModelName)