如何将多个用户添加到 Django 中的单个 auth_group

riy*_*ash 3 python django django-1.8 python-3.6

我有一个用户列表和一个名为“group1”的身份验证组。这些用户是通过bulk_createDjango 中的方法创建的。现在我需要将所有这些用户添加到组“group1”。我可以使用 for 循环来实现这一点,例如:

group1 = Groups.objects.get(name='group1') 
for user in users:
    group1.user_set.add(user)
Run Code Online (Sandbox Code Playgroud)

但我想知道是否有任何简单和更好的方法而不使用 for 循环。

Ala*_*air 7

add()方法接受一个对象列表:

group1 = Groups.objects.get(name='group1') 
group1.user_set.add(*users)
Run Code Online (Sandbox Code Playgroud)

这稍微整洁一些,但我不确定您是否会注意到性能上的任何差异。

有关更多信息,请参阅有关多对多关系的文档。