Как упростить процесс обновления поля phone_number в django, включая верификацию
Описание проблемы:
У нас есть модель пользователя, где номер телефона задан как имя пользователя и его unique=True,
.
У нас также есть поле для представления верифицированных/неверифицированных пользователей. И мы верифицируем пользователей с помощью OTP-верификации на номер телефона. Теперь нам нужно добавить новую функцию, в которой пользователь может заменить свой номер телефона, после чего он пройдет процесс верификации, а затем мы изменим его номер.
Также нам нужно сохранить его предыдущий номер (который он уже верифицировал) до тех пор, пока этот новый номер не будет верифицирован. Если по какой-то причине пользователь решит вернуться без верификации, мы удалим вновь добавленный номер и сохраним его старый номер как имя пользователя.
Итак, как лучше всего подойти к решению этой проблемы
Я рассматриваю возможность иметь другую модель, связанную с ForeignKey с User
class AlternativeNumber(models.Model):
user = User() # forignkey
number = Charfield
is_verfied = BooleanField
Итак, мы будем проверять номер пользователя и заменять его оригинальный номер на альтернативный номер из набора альтернативных номеров
Как вы думаете, мы можем сделать это более просто. Как вы думаете, у него могут быть какие-то недостатки или мы можем пойти с лучшей оценкой? Спасибо.
На мой взгляд, вы можете добавить два новых поля в класс User
alternative_number = CharField
is_aletrnative_verfied = BooleanField
<<<Если пользователь не подтвердил свой номер, вы можете создать задание cron, которое будет проверять, проверяет ли , и если оно было ложным, то удалите любое значение в is_aletrnative_verfied
, просто чтобы данные были последовательными.alternative_number
Надеемся, что вы найдете это полезным!