Here's the code to create a password reset URL using Django all_auth.
Handling raw passwords involves a high level of risk, so take utmost care in its operation.
from django.contrib.auth import get_user_model
from django.urls import reverse
from allauth.account.forms import default_token_generator
from allauth.account.utils import user_pk_to_url_str
user = get_user_model().objects.get(id=user_id)
temp_key = default_token_generator.make_token(user)
path = reverse(
"account_reset_password_from_key",
kwargs=dict(uidb36=user_pk_to_url_str(user), key=temp_key),
)
print('https://www.example.com' + path)
Comments