1

У меня есть приложение django, которое использует django-authopenid как единственный способ регистрации. У меня есть registration в моих установленных приложениях, которые использует django-authopenid. Идеальное решение позволило бы мне запустить произвольный код на пользовательском объекте при регистрации. Я не могу напрямую изменить код для django-authopenis или registration.Как установить группу по умолчанию с помощью django-authopenid?

Дайте мне знать, если мне нужно добавить более подробную информацию.

ответ

2

На models.py можно привязать post_save signal:

from django.contrib.auth.models import User, Group 
from django.db.models.signals import post_save 


def default_group(sender, instance, created, **kwargs): 
    if created: 
     instance.groups.add(Group.objects.get(name='your default group name')) 
post_save.connect(default_group, sender=User) 

Если сомневаетесь, прочитайте документацию signals.

+0

Спасибо! Я раньше не использовал сигналы, но это будет очень полезно и в других частях моего приложения. :-) – FakeRainBrigand