django没有反向匹配表格动作不起作用

时间:2018-04-09 19:17:02

标签: django linux python-2.7

11和python 2.7,我在渲染视图时出错。当加载html在动作形式url不起作用时,我不知道为什么。

有什么建议吗?

网址:

url(r'^admin/user_list/(?P<user_id>\d+)/edit/$', views.admin_zone_edit_user, name='edit_users'),

html:

 {% extends 'admin/baseadmin.html' %} 
 {% load staticfiles %}
 {% block content %}
 {% csrf_token %}
 <div ><form id="login" action="{% url 'admin_zone_edit_user' %}" method  ="post" enctype="multipart/form-data">
    {% csrf_token %}
    {{form.as_p}}
    <input type="submit" value="Save"></input>

  </form></div>
  {% endblock %}

错误,没有反向匹配。

NoReverseMatch at /admin/user_list/3/edit/

Reverse for 'admin_zone_edit_user' not found. 'admin_zone_edit_user' is not a valid view function or pattern name.

Request Method:     GET
Request URL:    http://127.0.0.1:8000/admin/user_list/3/edit/
Django Version:     1.11.11
Exception Type:     NoReverseMatch
Exception Value:    

Reverse for 'admin_zone_edit_user' not found. 'admin_zone_edit_user' is not a valid view function or pattern name.

Exception Location:     /usr/local/lib/python2.7/dist-packages/django/urls/resolvers.py in _reverse_with_prefix, line 497
Python Executable:  /usr/bin/python
Python Version:     2.7.12
Python Path:    

['/home/rokanas/rummi',
 '/usr/lib/python2.7',
 '/usr/lib/python2.7/plat-x86_64-linux-gnu',
 '/usr/lib/python2.7/lib-tk',
 '/usr/lib/python2.7/lib-old',
 '/usr/lib/python2.7/lib-dynload',
 '/home/rokanas/.local/lib/python2.7/site-packages',
 '/usr/local/lib/python2.7/dist-packages',
 '/usr/lib/python2.7/dist-packages',
 '/usr/lib/python2.7/dist-packages/PILcompat',
 '/usr/lib/python2.7/dist-packages/gtk-2.0',
 '/usr/lib/python2.7/dist-packages/ubuntu-sso-client']

Server time:    Mon, 9 Apr 2018 18:52:37 +0000
Error during template rendering

2 个答案:

答案 0 :(得分:2)

您的网址不起作用,因为您的视图需要user_id,网址名称也是错误的。 URL标记的工作原理如下 {% url '<url_name>' <expected_value/s> %}

答案 1 :(得分:1)

url模板标记中的名称不正确。根据您的网址定义,模板代码应为:

action="{% url 'edit_users' user_id %}"

已编辑添加user_id