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
答案 0 :(得分:2)
您的网址不起作用,因为您的视图需要user_id
,网址名称也是错误的。 URL标记的工作原理如下
{% url '<url_name>' <expected_value/s> %}
答案 1 :(得分:1)
url
模板标记中的名称不正确。根据您的网址定义,模板代码应为:
action="{% url 'edit_users' user_id %}"
已编辑添加user_id
。