Как лучше всего использовать has_usable_password в шаблонах Django 3?
Я хотел бы добавить условие в мой шаблон, чтобы увидеть, установлен ли пароль пользователя или нет.
У меня не работает что-то вроде этого, потому что я не могу вставить это в свой html:
>>> a = User.objects.create_user('user1', 'user1@example.com')
>>> b = User.objects.create_user('user2', 'user2@example.com', password='secret')
>>> a.has_usable_password()
False
>>> b.has_usable_password()
True
Я пытался поместить has_usable_password
в html как тег шаблона, но это не работает:
{% if user.has_usable_password == True %}
password ok
{% else %}
password not set
{% endif %}
Подобное тоже не работает
{% if user.has_usable_password %}
passord ok
{% else %}
password not set
{% endif %}
Но если я захожу в панель администратора, то вижу, что пароль не установлен.
Редактировать:
Мое представление выглядит следующим образом:
class PasswordCustomChangeView(LoginRequiredMixin, SuccessMessageMixin, PasswordChangeView):
form_class = PasswordChangeForm
success_url = reverse_lazy('homepage')
template_name = 'user/change_password.html'
success_message = "Password was changed successfully"
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
return context