В модели Profile есть ссылки на другие модели, которые не должны быть пустые. В интернете советуют так делать -
# This receiver handles token creation immediately a new user is created.
@receiver(post_save, sender=User)
def create_auth_token_and_user_profile(sender, instance=None, created=False, **kwargs):
if created:
Token.objects.create(user=instance)
Profile.objects.create(user=instance)
При создании пользователя у меня ругается на violates not-null constraint. И вроде как не придерешься, как я могу создать пустой профиль в БД, когда там нот нулл поле в профиле есть.
Создаю пользователя так - User.objects.create_user(username="testUser2", profile = profile2, password="ввввв") # ADD THIS LINE
В параметр профиль передаю вполне валидный профиль со всеми ссылками, но он же не попадает в метод create_auth_token_and_user_profile. Как тут быть?
если профиль уже передается в create(), то сигнал не нужен
Обсуждают сегодня