Регистрация ссылок в Django refferal
В моем проекте мне нужно зарегистрировать пользователя User1, а затем User2, используя реферальную ссылку от User1. Эта ссылка должна содержать access_code
, уникальную для каждого пользователя, например http://my_site/register?access_code=some_random_code
. Все пользователи регистрируются через одну ссылку view
:
class UserCreateAPIView(CreateAPIView):
queryset = get_user_model().objects.all()
serializer_class = UserSerializer
Модель пользователя:
class User(AbstractUser):
pair = models.OneToOneField(
"self", null=True, blank=True, on_delete=models.DO_NOTHING)
access_code = models.UUIDField(
default=uuid.uuid4, editable=False, unique=True)
Итак, мне нужно:
- Проверьте, есть ли
access_code
в теле запроса - Если
access_code
существует, то найдите пользователя User1, который отправил этот код - Добавьте id пользователя User1 к текущему пользователю (User2) в поле
pair
- Добавить User2(current) к User1 в поле
pair
таким образом оба пользователя имели ссылки друг на друга черезpair
поля