【问题标题】:Django variable: declare in urlsDjango 变量:在 url 中声明
【发布时间】:2011-12-22 02:29:37
【问题描述】:

在 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' ???

谢谢。

【问题讨论】:

    标签: django django-urls


    【解决方案1】:

    您无需将其放入extra_context。它已在 URL 中捕获,因此存在于模板中的 params 字典中:{{ params.user_id }}

    请参阅the documentation - 还要注意这些旧的基于函数的通用视图已被弃用,您应该使用基于类的TemplateView

    【讨论】:

      【解决方案2】:

      该变量确实没有在该 python 代码中声明。 :) 您不需要在视图上下文中设置此变量。视图将接收命名匹配为 **kwargs。

      【讨论】:

      • 但是如你所见,我使用通用视图...如何将其直接发送到模板?
      猜你喜欢
      • 2019-08-07
      • 2016-04-15
      • 2010-10-17
      • 2020-07-05
      • 1970-01-01
      • 1970-01-01
      • 2014-04-10
      • 2013-03-24
      • 2011-12-18
      相关资源
      最近更新 更多