Переменная Django: объявить в URL - PullRequest
0 голосов
/ 04 ноября 2011

In urls.py:

(r'^bbb/id(?P<user_id>[0-9]+)/$', 'django.views.generic.simple.direct_to_template,
    {'template': 'some.html', 'extra_context': {'user_id': user_id}}),

В some.html: {{ user_id }}

Но есть ошибка: name 'user_id' is not defined (in urls.py)

Итак, как объявить эту переменную в urls.py и отправить ее непосредственно в 'some.html' ???

Спасибо.

Ответы [ 2 ]

6 голосов
/ 04 ноября 2011

Вам не нужно помещать его в extra_context. Он уже записан в URL, поэтому присутствует в словаре params в шаблоне: {{ params.user_id }}.

См. документацию - а также обратите внимание, что эти старые основанные на функциях общие представления устарели, и вам следует использовать основанный на классах TemplateView .

0 голосов
/ 04 ноября 2011

Переменная действительно не объявлена ​​в этом коде Python.:) Вам не нужно устанавливать эту переменную в контексте представления.Представление получит именованные совпадения как ** kwargs.

...