如何通过url将变量从html模板传递到django中查看方法

时间:2015-05-19 15:50:59

标签: django django-templates

我想将一个变量从html模板传递到django中的view方法,以便我可以在python视图方法中使用它。

以下是我的HTML代码:

<li><a href="{%url 'Automation:rollbackAAI' router_hostname %}">Rollback</a>

我的网址映射:

url(r'rollbackAAI/(?P<router_name>[a-z]+)$',views.rollbackAAI, name='rollbackAAI'),

我的views.py:

def rollbackAAI(request, router_name = None, *args, **kwargs):
    print (router_name)

然而,在加载html模板时,它会给出NoReserveMatch错误:

Reverse for 'rollbackAAI' with arguments '('a2router',)' and keyword arguments '{}' not found. 1 pattern(s) tried: ['vpesat/rollbackAAI/(?P<router_name>[a-z]+)$']

1 个答案:

答案 0 :(得分:0)

您的路由器名称中包含一个数字,与您的正则表达式不匹配。您应该使用\w,它匹配所有字母数字字符。

r'rollbackAAI/(?P<router_name>\w+)$'