9

ここで django の初心者です。現在、管理者の password_reset 関数を使用してパスワードの回復を実装しようとしていますが、エラーが発生しています。同様の問題を抱えている他の人について読んだことから、ある種のポート/ソケットの問題ですが、それを変更または修正する方法がよくわかりません。これを仮想ubuntuで実行していることに言及する必要がありますが、それが関係しているかどうかはわかりません。

Environment:

Request Method: POST
Request URL: http://127.0.0.1:8000/admin/password_reset/
Django Version: 1.1.4
Python Version: 2.6.6
Installed Applications:
['django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.sites',
 'homework.events',
 'django.contrib.admin']
Installed Middleware:
('django.middleware.common.CommonMiddleware',
 'django.contrib.sessions.middleware.SessionMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware')


Traceback:
File "/usr/local/lib/python2.6/dist-packages/django/core/handlers/base.py" in   get_response
  99.                     response = callback(request, *callback_args, **callback_kwargs)
File "/usr/local/lib/python2.6/dist-packages/django/contrib/auth/views.py" in password_reset
  116.             form.save(**opts)
    File "/usr/local/lib/python2.6/dist-packages/django/contrib/auth/forms.py" in save
  136.                 t.render(Context(c)), None, [user.email])
    File "/usr/local/lib/python2.6/dist-packages/django/core/mail.py" in send_mail
  407.                         connection=connection).send()
    File "/usr/local/lib/python2.6/dist-packages/django/core/mail.py" in send
  281.         return self.get_connection(fail_silently).send_messages([self])
    File "/usr/local/lib/python2.6/dist-packages/django/core/mail.py" in send_messages
  179.         new_conn_created = self.open()
    File "/usr/local/lib/python2.6/dist-packages/django/core/mail.py" in open
  144.                                            local_hostname=DNS_NAME.get_fqdn())
    File "/usr/lib/python2.6/smtplib.py" in __init__
  239.             (code, msg) = self.connect(host, port)
    File "/usr/lib/python2.6/smtplib.py" in connect
  295.         self.sock = self._get_socket(host, port, self.timeout)
    File "/usr/lib/python2.6/smtplib.py" in _get_socket
  273.         return socket.create_connection((port, host), timeout)
    File "/usr/lib/python2.6/socket.py" in create_connection
  561.     raise error, msg

Exception Type: error at /admin/password_reset/
Exception Value: [Errno 111] Connection refused

(おそらく) ポートで何かを変更する必要があることはわかっていますが、エラーを修正する方法がわかりません。また、コードの編集が不十分であることをお詫び申し上げます。前もって感謝します。

4

6 に答える 6

8

パスワード リセット機能は、電子メールの送信を試みます。
メール サーバーに接続しようとしたが、接続が拒否されたため、このエラーが発生します。

于 2011-05-10T00:54:18.707 に答える
3

password_reset 関数では、リセット メールを送信するために smtp サーバーが必要です。メールを送信するために smtp サーバーをセットアップするか、set_password 関数のようなメールのシードを必要としない他の関数を選択することができます。

于 2011-05-10T05:17:29.727 に答える
1

電子メール バックエンドを見て、開発モードで電子メールをテストしてください。コンソールまたはファイルに出力できます。または、送信メールを送信するために smtp サーバーをセットアップする必要があります。

于 2011-05-10T08:30:32.057 に答える