2013-03-27 4 views
6

Tôi đang sử dụng khung công tác Django forgot_password với mẫu tùy chỉnh. Tôi đang sử dụng Django 1.5. My tùy chỉnh mẫu password_reset_email.html trông như thế này:Lỗi mẫu Django: Không thể phân tích phần còn lại: ',' từ 'uid,'?

{% 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 %} 

#Exception: 
Exception Type: TemplateSyntaxError at /accounts/password/reset/ 
Exception Value: Could not parse the remainder: ',' from 'uid,' 
+0

Vâng, đó là !!!!! – pynovice

Trả lời

14

Đặt điều này trong đầu:

{% load i18n %}{% load url from future %} 
{% autoescape off %} 
.......... 

Di ,, bạn đặt nó bên cạnh uidb36=uid,

{% url 'django.contrib.auth.views.password_reset_confirm' uidb36=uid token=token %} 
+0

Vâng, đã hoàn tất nhưng vẫn là lỗi tương tự. – pynovice

+0

Đã xong! Đang làm việc!! – pynovice

+0

Một câu hỏi nữa trước khi tôi chấp nhận câu trả lời, tôi muốn URL đặt lại mật khẩu với URL của tôi. Tôi có nên nhập thủ công hay không? Ngay bây giờ, thay vì example.com tôi muốn nó đi đến 127.0.0.1:8000. – pynovice

11

tôi không có đủ uy tín để nhận xét về câu trả lời được chấp nhận, nhưng không nên yêu cầu {% load url from future%} vì bạn đang sử dụng Django 1.5. Nó chỉ cần thiết trong Django 1.3 và 1.4. https://docs.djangoproject.com/en/dev/releases/1.3/#changes-to-url-and-ssi

+0

Cảm ơn bạn đã chỉ nó cho bạn đời của chúng tôi. +1. – pynovice

+0

Vì vậy, vấn đề thực sự trong mẫu là thiếu dấu ngoặc kép xung quanh chế độ xem và ký tự ',' bổ sung sau uid? – winwaed

+0

Chỉ cần một lưu ý để xác nhận câu trả lời của Derek và nhận xét của winwaed. Sửa báo giá và xóa nhận xét là câu trả lời cho tôi. +1 – Guerry