встроенная проблема сброса пароля в django1.3 - PullRequest
0 голосов
/ 21 сентября 2011

Привет, я новичок в django, теперь я пытаюсь встроить сброс пароля. .Я перехожу по ссылке ссылка Но я получил ошибку, когда нажимаю кнопку сброса пароля в / password_reset /: ошибка в / accounts / password_reset /

[Errno 10061] No connection could be made because the target machine actively refused it.
Exception Location: C:\Python27\lib\socket.py in create_connection, line 571


  'urls.py'

(r '^ accounts / password_reset $', 'django.contrib.auth.views.password_reset' , 'template_name': 'user/password_reset_form.html','email_template_name':'user/password_reset_email.html'casts),

(r '^ accounts / password / reset / verify / (? P [0-9A-Za-z]{1,13}) - (? P [0-9Aa-z] {1,13} - [0-9A-Za-z] {1,20}) / $ ', ' django.contrib.auth.views.password_reset_confirm ', {' template_name ':' user / password_reset.html ',' post_reset_redirect ':' / logout / '}),

     (r'^accounts/password_reset/done/$',<b>'django.contrib.auth.views.password_reset_done'</b>,{'template_name':'user/password_reset_done.html'}),


    (r'^accounts/change_password/$',<b> 'password_change'</b>, {'post_change_redirect' : '/accounts/change_password/done/'}),

    (r'^accounts/change_password/done/$',<b> 'password_change_done'</b>,{'template_name':'user/password_change_done.html'}),


<b>password_reset_email.html</b>


{% extends 'base.html'%}
{% block content%}
{% url django.contrib.auth.views.password_reset_confirm uidb36=uid, token=token %}
{% endblock %}

Я добавляю необходимые шаблоны впапка «пользователь».Пожалуйста, помогите мне, спасибо заранее.

Ответы [ 2 ]

0 голосов
/ 22 сентября 2011

Как сказал rdegges, это ошибка соединения. Проверьте, к какому порту запрос пытается получить доступ, и убедитесь, что брандмауэр Windows настроен для приема на этот порт. Вы можете проверить порт, просмотрев страницу трассировки django и "локальные переменные".

Судя по всему, это порт электронной почты. Посмотрите еще раз на трассировку и найдите django, пытающийся отправить запрос на порт 25. Если это так, убедитесь, что ваш порт 25 настроен на прием.

Кроме того, вам понадобится временный SMTP-сервер для тестирования, потому что вы, вероятно, не захотите использовать реальный. Просто запустите его в отдельном окне командной строки во время работы django, и любые электронные письма, которые django пытается отправить через ваш порт 25, будут сохранены в папке «emails» в рабочем каталоге.

#/usr/bin/env python

from datetime import datetime
import asyncore
from smtpd import SMTPServer

class EmlServer(SMTPServer):
    no = 0
    def process_message(self, peer, mailfrom, rcpttos, data):
        filename = '%s-%d.eml' % (datetime.now().strftime('%Y%m%d%H%M%S'), self.no)
        f = open(filename, 'w')
        f.write(data)
        f.close()
        print '%s saved.' % filename
        self.no += 1


def run():
    foo = EmlServer(('localhost', 25), None)
    try:
        asyncore.loop()
    except KeyboardInterrupt:
        pass


if __name__ == '__main__':

    from os.path import exists, join
    from os import mkdir, chdir, getcwd

    target_directory = join( getcwd(), "emails" )
    if exists(target_directory):
        chdir(target_directory)
    else:
        try:
            mkdir(target_directory)
        except OSError:
            from sys import exit
            exit("The containing folder couldn't be created, check your permissions.")
        chdir(target_directory)
    print "Using directory %s" % target_directory

    run()
0 голосов
/ 21 сентября 2011

Ошибка, которую вы получаете, является ошибкой подключения - это означает, что сервер, который вы используете для запуска вашего сайта Django, вероятно, работает неправильно.Вот несколько вещей, которые вы можете попробовать на своем сервере Django:

  • Если вы запускаете свой сайт Django через python manage.py runserver, вы можете просто попытаться повторно запустить эту команду.
  • Если ваш сайт работает через веб-сервер, такой как apache, попробуйте перезапустить apache.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...