django-регистрация активирует сопоставление URL - PullRequest
0 голосов
/ 19 марта 2012

Я внедряю пакет django-registration для моего проекта.Все работало гладко, но когда вы переходите по ссылке, отправленной на электронное письмо с ключом активации в URL, django не сопоставляет ни один URL с указанным URL.

Сгенерированный URL, отправленный по электронной почте:

http://127.0.0.1:8000/accounts/activate/23c768c78ecd7af9b1516e37013901fd9ea=0b062/

и один из URL-адресов, с которыми django пытается сопоставить его:

^accounts/ ^activate/(?P<activation_key>\w+)/$ [name='registration_activate']

, но, очевидно, он не совпадает.Любые идеи, что может быть не так?

Мой основной urls.py содержит

(r'^accounts/', include('registration.urls'))

и в registration.urls имеет

url(r'^activate/(?P<activation_key>\w+)/$',
                       activate,
                       name='registration_activate')

Ответы [ 2 ]

0 голосов
/ 19 марта 2012

Нашел решение по Знак равенства в URL активации активации django Проблема заключалась в том, что мой почтовый "клиент" в cmd добавлял знак "=" для объединения строк.

Спасибо

0 голосов
/ 19 марта 2012

я не думаю, что = - это буквенно-цифровой символ, который будет соответствовать \w, вам нужно будет добавить = к вашему регулярному выражению.

также морковь ^ обозначает начало поля, поэтому

^accounts/activate/(?P<activation_key>\w+)/$ [name='registration_activate']

будет работать. Если вы не говорите, что ^ account находится в вашем основном urls.py, а ^ activ - во включенном urls.py, в этом случае ваш вопрос меня немного смущает.

...