permission password create authenticate auth django django-views registration usergroups

password - ¿Cómo asignar un usuario a un grupo al registrarse utilizando django-userena?



login url django (1)

Editado : form.save() devuelve el usuario que acaba de crear. Tienes que simplemente agregarlo a tu grupo. Tu vista debería verse más o menos así:

form = signup_form() if request.method == ''POST'': form = signup_form(request.POST, request.FILES) if form.is_valid(): user = form.save() user.groups.add(Group.objects.get(name=''employer''))

También consideraría usar señales , si lo que desea hacer es agregar a cada usuario a su grupo de empleadores . Algo así agregará a cada usuario recién creado y le permitirá usar la vista de signup predeterminada de userena :

# somewhere, in your models.py file @receiver(post_save, sender=User, dispatch_uid=''myproject.myapp.models.user_post_save_handler'') def user_post_save(sender, instance, created, **kwargs): """ This method is executed whenever an user object is saved """ if created: instance.groups.add(Group.objects.get(name=''employer''))

Me gustaría separar a los usuarios en dos grupos diferentes, empleador o empleado, en el momento del registro. Estoy usando django-userena y para el grupo de empleadores estoy pensando en usar un clon de la misma vista de registro excepto con una URL diferente vinculada a él.

Entonces, quien se registre en url (r ''^ signup / employer / $) se agregará al grupo de empleadores con

new user = user.groups.add(Group.objects.get(name=employer))

agregado a la vista. ¿Es este el enfoque correcto?