def create(self, data): """Handle user and profile creation.""" data.pop('password_confirmation') user = User.objects.create_user(**data, is_verified=False, is_client=True) Profile.objects.create(user=user) send_confirmation_email.delay(user_pk=user.pk) return user
def create(self, data): """ Handle user create""" data.pop('password_confirmation') user = User.objects.create(**data, is_verified=False) Profile.objects.create(user=user) send_confirmation_email.delay(user_pk=user.id) return user
def create(self, validated_data): validated_data.pop('password_confirmation') user = User.objects.create_user(**validated_data, is_verified=False, is_client=True) Profile.objects.create(user=user) send_confirmation_email.delay(user_pk=user.pk) return user
def create(self, data): """Handle user and profile creation.""" data.pop('password_confirmation') #excluimos el password confirmation que no lo necesitamos a la hora de crear el circulo user = User.objects.create_user(**data, is_verified=False, is_client=True) # creamos un usuario en el objeto del model User Profile.objects.create(user=user) # creamos un perfil con la informacion del usuario send_confirmation_email.delay(user_pk=user.pk) # send_email es una tarea que creamos en celery, pero para poder llamar la funcion # con sus valores debemos usar el metodo .delay() que indica que es una tarea async # y permite enviar algunos argumentos # usamos este metodo para verificar el email haciendo uso del usuario return user
def create(self, validated_data): """ Handle user and profile creation. :param validated_data: :return: """ validated_data.pop('password_confirmation') user = User.objects.create_user( **validated_data, is_verified=False, is_client=True, ) send_confirmation_email.delay(user.pk) Profile.objects.create(user=user) return user
def create(self, data): """Handle user and profile creation.""" data.pop('password_confirmation') with transaction.atomic(): user = User.objects.create_user(**data, is_verified=False, is_client=True) Profile.objects.create(user=user) transaction.on_commit( lambda: send_confirmation_email.delay(user_pk=user.pk)) return user