0 / 0 / 0
Регистрация: 19.01.2013
Сообщений: 21
1

Как переопределить метод save для формы смены пароля?

07.06.2013, 20:36. Показов 2157. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Задача: переопределить метод save для формы смены пароля (PasswordResetForm), т.к. нужно использовать другой отправщик писем.
пишу так:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
from django.contrib.auth.forms import PasswordResetForm as DjangoPasswordResetForm
 
class PasswordResetForm(DjangoPasswordResetForm):
 
    def save(self):
        token_generator = default_token_generator
       
        UserModel = get_user_model()
        email = self.cleaned_data["email"]
        users_cache = UserModel._default_manager.filter(email__iexact=email)
 
        for user in users_cache:
            send_templated_mail(
                template_name='password_reset',
                from_email='from@example.com',
                recipient_list=[user.email],
                context={
                    'username': user.username,
                    'token': token_generator.make_token(user),
                },
            )
Правильно ли так получать пользователя:
Python
1
2
3
        UserModel = get_user_model()
         email = self.cleaned_data["email"]
        users_cache = UserModel._default_manager.filter(email__iexact=email)
и почему в самой форме у джанго они просто используют
Python
1
 for user in self.users_cache:
а сам self.users_cache определяется в другом методе.

И даже так как у меня написано
Python
1
email = self.cleaned_data["email"]
он не находит метода cleaned_data

Помогите, пожалуйста, во всем этом разобраться.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.06.2013, 20:36
Ответы с готовыми решениями:

Пользовательский метод save() у класса формы
Здравствуйте! Всех со Старым Новым Годом! Я переопределяю метод save в классе формы, для того чтобы...

Переопределить метод и забрать данные с формы
Сейчас есть метод GET который выгружает данные из БД на форму в html Надо переопределить метод на...

Как переопределить сочетания клавиш для menubar из формы
Всем доброго времени суток! Как переопределить горячие сочетания клавиш для "акшинов" menubar из...

Переопределить окно ввода логина и пароля для Windows authentication
Здравствуйте, можно ли вместо обычного окна ввода логина и пароля, назначить другое, которое я сам...

Создать кнопку для смены пароля
Я сделал программу. Идентификации и аутентификации пользователя, Но не знаю как добавить...

2
135 / 120 / 37
Регистрация: 30.09.2012
Сообщений: 400
07.06.2013, 20:50 2
может это поможет - http://stackoverflow.com/quest... ean-method
например указано заменить
Python
1
self.cleaned_data['newpassword1']
на
Python
1
self.cleaned_data.get('newpassword1')
0
Эксперт С++
261 / 191 / 10
Регистрация: 19.08.2010
Сообщений: 760
Записей в блоге: 1
26.06.2013, 01:49 3
Объекты обычно получают следующим образом:

Python
1
2
email = self.cleaned_data["email"]
users_cache = UserModel.objects.get(email=email)
Цитата Сообщение от Carant Посмотреть сообщение
И даже так как у меня написано
Python
1
email = self.cleaned_data["email"]
он не находит метода cleaned_data
Скорее всего, вы забыли предварительно сделать проверку проверку is_valid()
0
26.06.2013, 01:49
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.06.2013, 01:49
Помогаю со студенческими работами здесь

Утилита rac для смены пароля от БД
Добрый день, сменил пароль от админа postgres в 1с ubuntu server и теперь БД в 1с нестартуют, ...

Программа для ввода/смены пароля
Напишите программу, которая отображала бы на первом этапе информацию о набираемом пароле, а на...

Утилита для смены пароля пользователям домена
Всех приветсвую, Помню раньше, во времена Windows 2000 Server была утилита, с помощью которой...

При смене пароля выдается сообщение, и его выкидывает на окно смены пароля
При создании нового пользователя ему выдается временный пароль, который нужно сменить при первом...

Переопределить метод toString для подкласса
Допустим есть класс Car: import java.lang.reflect.*; public class Car implements...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru