2011-05-09 38 views
4

here django登録用のテンプレートをダウンロードしました。Django登録テンプレート

誰かが私のパスワードをリセットする方法を教えてもらえますか? 「reset_link」と呼ばれ、そのブロックがどこから来るか

{% extends "base.html" %} 
{% block content %} 
{% if validlink %} 
<form method="post" action="."> 
    {{ form.as_p }} 
    <input type="submit" value="Submit" /> 
</form> 
{% else %} 
<p>Password reset failed.</p> 
{% endif %} 
{% endblock %} 

password_reset_email.htmlでは、私は理解していない私たちがしているので、:validlinkはどこから来る

はpassword_reset_confirm.htmlでは、私は理解していませんテンプレートを拡張しないでください:

Reset password at {{ site_name }} 
{% block reset_link %} 
{{ protocol }}://{{ domain }}{% url auth_password_reset_confirm uidb36=uid, token=token %} 
{% endblock %} 

また、site.nameではありませんか?

答えて

4

validlinkは、Djangoのpassword_reset_confirmビューで初期化される:

からreset_linkブロックがhereであるあなたのプロジェクトからこのテンプレートを拡張することができるように。

password_reset_confirmpassword_reset_emailのビューは、Djangoソースから実行されます。例えば、password_reset_confirmビューは、テンプレートをレンダリングします:

template_name='registration/password_reset_confirm.html' 

はあなたのsettings.pyで、次の順序でTEMPLATE_LOADERSを持っていると仮定すると:

yourproject/ 
    templates/ 
     registration/ 
      password_reset_confirm.html 

TEMPLATE_LOADERS = (
    'django.template.loaders.filesystem.Loader', 
    'django.template.loaders.app_directories.Loader' 
) 

で、プロジェクトのカスタマイズpassword_reset_confirm.htmlを配置することにより

Djangoのテンプレートローダーは、プロジェクトのでpassword_reset_confirm.htmlを検索しますフォルダを開き、前回の検索に失敗した場合はDjangoの独自の登録アプリに登録してください。

Django's template loaderについて詳しく読むことができます。

1

pypiからダウンロードしたすべてのdjangoアプリは、(virtualenvの場合)envname/lib/site-packages/app-installedに保存されます。ローカルサーバー上のアプリケーションにURLを定義すると、site-packagesにurlが格納されているように自分自身を開発しました。あなたがアプリのURLの参照を参照する必要がある場合は、関連するurls.pyを調べることができます。あなたのケースでは、登録に行き、それに割り当てられたURLの名前を見ることができます。あなたの入力は、フォームの下に"<input class='btn btn-primary' type="submit" value="{% trans 'Reset' %}" />"のようなものでなければなりません。 {%trans 'Reset'%}を押すと、正確なURLに移動します。