Come aggiungere la funzione password dimenticata al sito di amministrazione Django? Con le opzioni di domande via email/sicurezza? C'è qualche plug-in/estensione disponibile?Aggiunta della funzione password dimenticata al sito di amministrazione Django
risposta
Sono tutti lì costruiti nel Django. Basta aggiungere i modelli di URL pertinenti. Come segue.
from django.contrib.auth import views as auth_views
patterns+=('',
url(r'^passreset/$',auth_views.password_reset,name='forgot_password1'),
url(r'^passresetdone/$',auth_views.password_reset_done,name='forgot_password2'),
url(r'^passresetconfirm/(?P<uidb36>[-\w]+)/(?P<token>[-\w]+)/$',auth_views.password_reset_confirm,name='forgot_password3'),
url(r'^passresetcomplete/$',auth_views.password_reset_complete,name='forgot_password4'),
)
E, oh, mentre ci sei, aggiungi anche le visualizzazioni e gli schemi di URL per la modifica della password.
url(r'^password/change/$',
auth_views.password_change,
name='auth_password_change'),
url(r'^password/change/done/$',
auth_views.password_change_done,
name='auth_password_change_done'),
sono elencati nel documentation naturalmente.
Dovrai fornire i tuoi modelli.
In realtà poiché Django 1.4 c'è un modo semplice per ottenere il link password dimenticata appaiono direttamente nella pagina di amministrazione di accesso (che suona come la precisa domanda richiesto):
https://docs.djangoproject.com/en/1.4/ref/contrib/admin/#auth-password-reset
È possibile aggiungere un funzionalità di reimpostazione della password per il sito di amministrazione aggiungendo alcune linee al tuo URLconf. In particolare, aggiungere questi quattro modelli:
url(r'^admin/password_reset/$',
'django.contrib.auth.views.password_reset',
name='admin_password_reset'), (r'^admin/password_reset/done/$',
'django.contrib.auth.views.password_reset_done'),
(r'^reset/(?P<uidb36>[0-9A-Za-z]+)-(?P<token>.+)/$',
'django.contrib.auth.views.password_reset_confirm'),
(r'^reset/done/$',
'django.contrib.auth.views.password_reset_complete'),
(Questo presuppone hai aggiunto l'amministratore a admin/e richiede che si mette gli URL che iniziano con ^ admin/prima della riga che include il admin app stesso).
Modificato in Django 1.4 La presenza del nome admin_password_reset URL causerà una “Password dimenticata?” Link ad apparire sul admin predefinita di log-in pagina sotto la casella della password
+1 Grazie! Viene anche con l'email? – Viet
Sì, è anche e-mail, gli id e-mail pertinenti. –
nota che se stai usando l'app di registrazione di django, devi solo includere urls.py della registrazione di django, cioè aggiungere 'url (r'^accounts/', include (' registration.urls ')) 'al tuo proprio urls.py –