2011-05-01 70 views
0

根據Django的password_reset視圖,它Django password_reset視圖,模板的鏈接變量是什麼?

允許用戶通過產生一個一次性使用鏈接 可以用來重置密碼,和 發送該鏈接到用戶的 重置其密碼 註冊電子郵件地址。

將電子郵件由用戶提供的模板生成。我無法找到是在電子郵件模板使用鏈接變量的名稱(這不是{{鏈接}} :)

Django的註冊應用程序,例如,它是{{activation_key}}

我甚至在我的模板中運行{%debug%}查看所有變量,沒有什麼顯而易見的。此外,這是Django 1.2,而不是開發版本。

更新:我的模板的樣子:

{{ protocol }}://localhost:8000{% url django.contrib.auth.views.password_reset_confirm uidb36=uid token=token %} 

Click on the link (or copy/paste into your browser), and then you can change your password 

,給我的結果(在一個文本文件模擬電子郵件):

http://localhost:8000/accounts/password/reset/confirm/12-2ws-1c60be00955ea4= 
a7a62e/ 

Click on the link (or copy/paste into your browser), and then you can chang= 
e your password 

回答

1

看看默認password_reset_email.html

http://code.djangoproject.com/browser/django/trunk/django/contrib/admin/templates/registration/password_reset_email.html 

這是生成的鏈接:

{{ protocol }}://{{ domain }}{% url 'django.contrib.auth.views.password_reset_confirm' uidb36=uid token=token %} 

編輯:

1.2版本:

http://code.djangoproject.com/browser/django/branches/releases/1.2.X/django/contrib/admin/templates/registration/password_reset_email.html?rev=15606 

不引用視圖。

{{ protocol }}://{{ domain }}{% url django.contrib.auth.views.password_reset_confirm uidb36=uid token=token %} 

有一個關於這個陳述修改注:

修訂12889,617個字節檢查由russellm,13個月前(DIFF)

固定#12945 - 更正解析 參數列表中有 逗號之間的空格時,參數在{%url%}中爲 。這是 r12503的修訂版本,它是#12072的修正。 感謝SmileyChris?對於修補程序 和dmoisset,以查找文檔中使用舊式 語法的所有 位置。

這裏將要與URL標籤更改注:

http://docs.djangoproject.com/en/dev/releases/1.3/#changes-to-url-and-ssi

+0

* *幾乎可以工作 - 但在結束之前包含等號/空格大約六十個字符。是否有一些參數導致它打破了界限?或者任何想法如何解決它? – 2011-05-01 21:13:52

+0

是因爲自動翻譯? http://docs.djangoproject.com/en/dev/ref/templates/builtins/?from=olddocs#autoescape原始模板會關閉自動轉義。 – DTing 2011-05-01 21:34:43

+0

我不確定它是否是自動轉義的,或其他與線長有關的東西。例如,我有另一行「點擊鏈接...更改密碼」,在下一行將其縮短爲「chang =」「e您的密碼」。希望這是明確的。 – 2011-05-01 21:41:30

2

你必須做一個網址上的「Django的逆轉.contrib.auth.views.password_reset_confirm'視圖,如default email所示。

+0

這看起來很有趣,但我發現工作的參數有問題。我應該注意到,我正在使用V 1.2,並且該鏈接適用於開發版 - 任何想法1.2都可以做到這一點? – 2011-05-01 21:02:09

+0

你能告訴我一個它現在返回的例子嗎? – spulec 2011-05-01 21:34:23

+0

謝謝,但主要是現在工作。你的回答肯定是正確的(我贊成它),但另一個更完整。 – 2011-05-01 21:57:04