从 Django 模板中的 URL 访问 kwargs
Access kwargs from a URL in a Django template
我可以在 Django 模板中访问命名参数(来自 URL)的值吗?
我可以从 Django 模板访问下面 this_name
的值吗?
url(r'^area/(?P<this_name>[\w-]+)/$', views.AreaView.as_view(), name="area_list")
我可以获得整个 URL 路径并将其分解,但想检查是否有直接的方法来做到这一点,因为它已经有了名称。
在视图的上下文数据中传递它可能是一种替代方法,但不确定我是否需要传递它,因为我猜模板已经以某种方式拥有它?但是在 request API 中找不到直接方法。
在视图中,您可以访问 URL args
和 kwargs
作为 self.args
和 self.kwargs
。
class MyView(View):
def my_method(self):
this_name = self.kwargs['this_name']
如果您只想访问模板中的值,则无需在视图中进行任何更改。基本 get_context_data
方法将视图作为 view
添加到上下文中,因此您可以将以下内容添加到模板中:
{{ view.kwargs.this_name }}
我可以在 Django 模板中访问命名参数(来自 URL)的值吗?
我可以从 Django 模板访问下面 this_name
的值吗?
url(r'^area/(?P<this_name>[\w-]+)/$', views.AreaView.as_view(), name="area_list")
我可以获得整个 URL 路径并将其分解,但想检查是否有直接的方法来做到这一点,因为它已经有了名称。
在视图的上下文数据中传递它可能是一种替代方法,但不确定我是否需要传递它,因为我猜模板已经以某种方式拥有它?但是在 request API 中找不到直接方法。
在视图中,您可以访问 URL args
和 kwargs
作为 self.args
和 self.kwargs
。
class MyView(View):
def my_method(self):
this_name = self.kwargs['this_name']
如果您只想访问模板中的值,则无需在视图中进行任何更改。基本 get_context_data
方法将视图作为 view
添加到上下文中,因此您可以将以下内容添加到模板中:
{{ view.kwargs.this_name }}