Есть ли простое имя группы пользователей в django

Я пробовал следующий код с помощью django.contrib.auth.User и django.contrib.auth.Group

for g in request.user.groups:
 l.append(g.name)

Но это не удалось, и я получил следующую Ошибка:

TypeError at /
'ManyRelatedManager' object is not iterable
Request Method: GET
Request URL: http://localhost:8000/
Exception Type: TypeError
Exception Value: 
'ManyRelatedManager' object is not iterable
Exception Location: C:\p4\projects\...\users.py in permission, line 55

Спасибо за любую помощь!

3 ответа

for g in request.user.groups.all():
 l.append(g.name)

или с недавним django

l = request.user.groups.values_list('name',flat=True)


user.groups.all()[0].name == "groupname"


Это лучше

if user.groups.filter(name='groupname').exists():
 # Action if existing
else:
 # Action if not existing

licensed under cc by-sa 3.0 with attribution.