Django как добавить членов в группы через сигналы?
другие мои сигналы работают, такие как обновление и создание экземпляра, но я не понимаю, почему он не добавляет членов в группу?
@receiver(post_save,sender=settings.AUTH_USER_MODEL)
def update_user_profile_from_User_model(sender,instance,created,**kwargs):
if instance.email:
MyAuthors.objects.filter(user=instance).update(user=instance,first_name=instance.first_name,last_name=instance.last_name,email=instance.email,is_blog_author=instance.is_blog_author)
if instance.is_blog_author == True:
my_group = Group.objects.get(name='myauthors')
print("group name: ", my_group )
add_user = my_group.user_set.add(instance)
print("add_user: ", add_user )
print result:
group name: myauthors
add_user: None
Я также пробовал это, но ничего не вышло.
group = Group.objects.get(name='myauthors')
if instance.is_blog_author:
instance.groups.add(group)
instance.save()
Я также хочу знать, почему мой экземпляр не создается, если я использую 'if author' вместо if not author
?
#update1 моя модель пользователя:
class UserManagement(AbstractUser):
is_blog_author = models.BooleanField(default=False)
is_editor = models.BooleanField(default=False)
is_subscriber = models.BooleanField(default=False)
is_customer = models.BooleanField(default=False)