社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Django

HTML模板中的django按钮创建了我无法解决的错误

A I • 4 年前 • 829 次点击  

我的代码很简单,但我承认我是从互联网上获取的。 我想通过单击按钮来更新模型。它是由变量选择的。所以我有这个HTML代码:

<form action="{% url 'reception:update_status' slug=name %}" method="POST">
  {% csrf_token %}
  <input type="submit" value="has arrived">
</form>

此代码在url.py中

re_path('update_status/(?P<slug>[-a-zA-Z0-9_]+)$', views.update_status, name='update_status'),

在视图中.py

def update_status(request, slug):
    if request.method == 'POST':
        p = MyModel.objects.filter(name=slug)
        p.status = 'is waiting'
        p.update()
        return redirect(request, 'home')

现在,对于这样的代码,当我单击按钮时,它会返回以下错误!

Reverse for '<WSGIRequest: POST '/update_status/Name10'>' not found. '<WSGIRequest: POST '/update_status/Name10'>' is not a valid view function or pattern name.

我不知道这意味着什么。请帮忙? 谢谢

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/38641
 
829 次点击  
文章 [ 2 ]  |  最新文章 4 年前
A I
Reply   •   1 楼
A I    5 年前

我用pk而不是slugs解决了这个问题。

我建议每个刚加入Django的人为每个模型创建一个ID字段。因为这样可以很容易地用来传递参数。鼻涕虫更复杂,使生活变得不必要的困难!

Sayse
Reply   •   2 楼
Sayse    5 年前

对于django 2.0中的regex模式,需要使用 re_path ,而不是 path 为你的网址。