2014-02-14 65 views
2

我正在使用Django 1.6。 我在myApp/templates/registration/password_reset_email.html中有以下文件。爲什麼Django的開箱即用密碼重置功能不起作用?

然而,當我在表單中輸入我的電子郵件地址發送重置密碼的電子郵件,我得到以下錯誤:

TemplateSyntaxError at /auth/password_reset/ 
Could not parse the remainder: ',' from 'uid,' 

有什麼不對低於模板使{%URL%}標籤失敗?

{% autoescape off %} 
You're receiving this e-mail because you requested a password reset for your user account at {{ site_name }}. 

Please go to the following page and choose a new password: 
{% block reset_link %} 
{{ protocol }}://{{ domain }}{% url django.contrib.auth.views.password_reset_confirm uidb36=uid, token=token %} 
{% endblock %} 

Your username, in case you've forgotten: {{ user.username }} 

Thanks for using our site! 

The {{ site_name }} team. 

{% endautoescape %} 

回答

3

當您使用具有多個參數的模板標籤時,請用空格分隔它們。

{{ protocol }}://{{ domain }}{% url 'django.contrib.auth.views.password_reset_confirm' uidb36=uid token=token %}(注意沒有,在「UID」。

我認爲這是解決方案。 有關自定義templatetags更多信息以及它們如何工作見https://docs.djangoproject.com/en/dev/howto/custom-template-tags/

+0

我怎樣才能讓這封電子郵件的外觀和感覺與我的應用程序中的其他HTML電子郵件一樣嗎?我有一個名爲baseEmail.html的模板,其中包含漂亮的頁眉和頁腳,但是當我將此文件擴展爲baseEmail.html時,我在文本中看到了所有HTML代碼的電子郵件。 –