我正在写一个带有ID并找到与该ID匹配的用户的页面。 这是我在 urls.py 中写的URL模式:
re_path(r'^users/id=(?P<username>[0-9]{9})$' , views.usershow , name = 'usershow') ,
我想使用表单传递用户名,所以我在模板中编写了该代码:
<form action="{% url 'CMS:usershow' %}" method="GET" >
{% csrf_token %}
<input name="id" type="number" placeholder="search">
<button type="submit">find</button>
</form>
但是它显示了这个错误:
Reverse for 'usershow' with no arguments not found. 1 pattern(s) tried: ['dashboard/users/id=(?P<username>[0-9]{9})$']
如何使用具有此URL模式的表单传递它?
答案 0 :(得分:0)
首先,请确保CMS应用的 urls.py 具有路径。
第二,传递用户ID值,如下所示:
<form action="{% url 'CMS:usershow' user_id %}" method="GET" >
REF:documentation
答案 1 :(得分:0)
这不是表单的工作方式。从模式中删除用户名:
path(r'^users/' , views.usershow , name = 'usershow') ,
并在视图中从请求中获取值;
username = request.GET["id"]