2011-07-11 4 views
6

testsディレクトリの下にあるものがいくつか見つかりましたが、正しいかどうかはわかりません。私が意味する認証テンプレートでDjangoはdjango.contrib.authモジュールで使用するための認証テンプレートを同梱していますか?

login.htmpassword_reset.htmなど

テンプレートの一部を見つけることができます:http://devdoodles.wordpress.com/2009/02/16/user-authentication-with-django-registration/

答えて

5

いいえ、それはあなたのテンプレートフォルダ内の「登録」ディレ​​クトリにこれらのテンプレートを探します。ドキュメントから

これは、デフォルトでは、登録/ login.htmlと呼ばれるテンプレートでログインフォームを提供するために、あなたの責任です。

テンプレート名:パスワードのリセットフォームを表示するために使用するテンプレートの完全な名前

パスワードは省略可能な引数をリセットします。指定されていない場合、デフォルトはregistration/password_reset_form.htmlになります。

ドキュメント:loginpassword_reset

+0

DjangoはDjangoサイトでこれらのテンプレートをどこかオンラインにしていましたが、私はそれを掘り起こすことはできません。すべての認証ビューのテンプレートがありました。 –

+0

それは面白いです、私は実際に聞いたことがないか、これらを見たことがない。 Djangoサイトにあったと確信していますが、あなたはフォーム自体を覚えていませんか? –

+0

私はそれを見つけました。彼らはここにいた:http://devdoodles.wordpress。com/2009/02/16 /ユーザー認証とdjango登録/。ポストは古いですが、CSRFトークンを追加すると、ほとんどのフォームが機能します。 –

5

あなたはdjango.contrib.admin.templates.registrationで認証テンプレートを使用することができます。

logged_out.html 
password_change_done.html 
password_change_form.html 
password_reset_complete.html 
password_reset_confirm.html 
password_reset_done.html 
password_reset_email.html 
password_reset_form.html 

ものはDjangoの管理のルックアンドフィールを持つことになりますので、私がお勧めしますカスタマイズしてください。

+0

プロジェクトにこれらを追加するにはどうしたらいいですか? – Rebs

+0

あなたのテンプレートディレクトリにコピーする –

4

django.contrib.admin.templates.registrationにあるテンプレートを上記のDZPMで述べたようにコピーし、独自の登録アプリのテンプレートディレクトリに配置します。 * your_proj_root/registration/templates/registration/*

重要!あなたはテンプレートの同じ正確なファイル名を維持している場合、あなたはdjango.contrib.adminアプリラインが下記のお登録アプリのラインを配置されていることを確認するために忘れてはいけません。それ以外の場合は、django.contrib.adminの登録テンプレートを優先的に使用します。

16

Django documentationには、「Djangoには認証ビューのデフォルトテンプレートはありません」と明示的に記載されていますが、管理用テンプレートを使用するのは簡単です。ちょうどそのurls.pyにこれを追加し、管理アプリを有効にします。

url(r'^accounts/login/$', 'django.contrib.auth.views.login', {'template_name': 'admin/login.html'}), 
url('^accounts/', include('django.contrib.auth.urls')), 

認証URLのすべては、Djangoの管理のルック・アンド・フィールとはいえ、今働いています。

+0

'/ login'は'不明なテンプレート変数<変数:u'title '> title'になります - Django 1.9.2 – Rebs

+0

'url()'の文字列ビュー引数のサポートが削除されましたDjango 1.10](https://docs.djangoproject.com/en/1.11/releases/1.10/#features-removed-in-1-10)を参照してください。代わりに 'from import django.contrib.auth.views import login'と' url(r '^ accounts/login/$'、login、... 'を使用してください。 – Evert

関連する問題