Для начала, я не эксперт в dr (django-registration) и на самом деле проверял это только потому, что вы упомянули об этом в своем вопросе.Так что, если у кого-то есть лучший ответ, пожалуйста, отправьте его.В любом случае, здесь все идет.
Я заметил, что способ создания пользователей (или «профилей», как их называет dr) находится в функции create_inactive_user, расположенной в registration.models.RegistrationManager.Итак, в этой функции после:
new_user.is_active = False
new_user.save()
Вы можете добавить что-то вроде:
default_group = Group.objects.get(name=WHATEVER_THE_GROUP_NAME_IS)
user_group, is_created = UserGroup.get_or_create(user=new_user)
user_group.group = default_group
#user_group.groups.add(default_group) # Django ver. 1.7+
user_group.save()
Возможно, вы можете обойтись без get_or_create, так как я не думаю, что вы можете создать более одногопользователь с тем же именем пользователя, но я бы предпочел быть в безопасности, чем сожалеть.
Этот метод заставит вас редактировать файлы dr (что может быть не лучшим решением) наряду с жестким кодированием определенных вещей (таких какимя группы по умолчанию), но оно должно быть хорошей отправной точкой.
PS.именем группы по умолчанию может быть переменная, расположенная в файле settings.py, что сделает ее более доступной и красивой.Пример:
settings.py:
DEFAULT_GROUP_NAME = 'YOUR GROUP NAME'
registration/models.py:
default_group = Group.objects.get(name=settings.DEFAULT_GROUP_NAME)
В любом случае, надеюсь, это поможет.