从django中的特定文本获取用户组名称

izkcnapc  于 2023-03-24  发布在  Go
关注(0)|答案(1)|浏览(109)

在django中,用户在一个简单的HTML表单中发布。在表单中,有一个名为“technician_name”的字段。我正在获取具有“name属性”的帖子并将其写入数据库。
我想要额外的东西:在获取name属性后,我想检查技术人员组。只需:我想根据具体的文本检查用户组。
例如:用户发布了“John Doe”。

if request.method == 'POST'    
    action_man = request.POST.get('technician_name')
Output:
action_man = "John Doe"

我需要这个 action_man 的用户组。action_man的名字和username相同,这样我就可以在django auth中查询。

  • 注意:我不需要登录用户的组。我需要行动人的组。*
dojqjjoe

dojqjjoe1#

我希望我理解正确。你有一些字符串,并希望过滤您的组与该字符串?

from django.contrib.auth.models import Group

some_string = "John Doe"
qs = Group.objects.filter(name=some_string)

# alternatively if only one hit is wanted
qs = Group.objects.get(name=some_string)

编辑

OP写道:“[..]John Doe属于Django授权组中的一个组。我想得到那个组的名称。”

user = User.objects.get(name="John Doe")
user_groups = [group.name for group in user.groups.all()]
print(f"John Doe belongs to the following groups: {user_groups}"

相关问题