Как расширить членство в Asp.net?

Когда вы выполняете POST на ^accounts/password/reset/$, запускается функция django.contrib.auth.views.password_reset . Для проверки электронной почты будет использоваться класс по умолчанию django.contrib.auth.forms.PasswordResetForm .

Вы должны заметить, что электронное письмо отправляется только тем активным пользователям, которые соответствуют указанному письму, и только в том случае, если у них есть пригодный для использования пароль.

Попробуйте использовать следующую функцию с оболочкой управления Django:

from django.contrib.auth.models import get_user_model

def check_password_reset_cond(email):
     for u in get_user_model().objects.filter(email__iexact=email):
         assert u.is_active
         assert u.has_usable_password()

11
задан chobo2 2 August 2009 в 06:25
поделиться

3 ответа

Да, вы можете создать настраиваемого поставщика членства . Ваш провайдер реализует MembershipProvider , дающий вам полный контроль над созданием интерфейса между системой членства и расширенной схемой базы данных. Написание настраиваемого поставщика членства для вашего веб-сайта ASP.NET 2.0 является подробным примером.

15
ответ дан 3 December 2019 в 06:46
поделиться

​​Ленивый способ сделать это - объединить имя учреждения и имя пользователя вместе, чтобы создать фактическое имя пользователя. .

Таким образом, у вас будет 3 разных имени пользователя: ABC & A09410515, GHA & A09410515 и & A09410515. Просто не позволяйте пользователю использовать & в имени пользователя.

Затем, прежде чем создавать пользователя или входить в систему, вы просто объединяете две строки вместе.

Я не могу придумать никаких серьезных проблем, которые не могут можно исправить простым взломом (например, отображением имени пользователя (используйте username.split ('&') [1] ), но сообщение JP определенно является «правильным» способом сделать это.

James

2
ответ дан 3 December 2019 в 06:46
поделиться

Вы можете использовать имя приложения в качестве учреждения, таким образом у вас будет одно и то же имя пользователя в разных приложениях

Родриго.

1
ответ дан 3 December 2019 в 06:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: