在我的网址中,我有几个具有相同命名参数的网址 user_id 。 是否可以在中间件中访问此参数 - 因此我可以将其一般性地传递给context_data - 或模板本身?
示例网址用于说明问题:
url(r'^b/(?P<user_id>[0-9]+)/edit?$', user.edit.EditUser.as_view(), name='user_edit'),
url(r'^b/(?P<user_id>[0-9]+)/delete?$', user.delete.DeleteUser.as_view(), name='user_delete')
答案 0 :(得分:5)
如果您需要在模板中使用此数据,只需覆盖视图的get_context_data
方法:
class MyView(View):
def get_context_data(self, **kwargs):
context = super(MyView, self).get_context_data(**kwargs)
context['user_id'] = self.kwargs.get('user_id')
return context
答案 1 :(得分:2)
答案 2 :(得分:0)
对于基于函数的视图:
模板
{% url 'view' PARAM=request.resolver_match.kwargs.PARAM %}
views.py
def myview(request, PARAM):
...
Django 2.2