Django 常见的报错

来源:互联网 发布:泰豪软件股份有限公司 编辑:程序博客网 时间:2024/06/06 10:53

一.

NoReverseMatch at /blogposts/

Reverse for 'blogpost' with arguments '('',)' not found. 1 pattern(s) tried: ['blogpost/(?P<BlogPost_id>\\d+)']
这个错误在我写Django博客时遇见了很多次,当时找了很多方法都没法解决,简直用欲哭无泪这种状态来说.
后来静下心来分析了很多遍前后逻辑,肯定是路由匹配不到,得出的结论是参数名称错误,仔仔细细检查了很多遍,
主要是blogpost_id 传参错误
在模板文件中id参数应该为实例的id,eg:
blog = BlogPost.object.get(pk=blogpost_id)
在模板文件中url传参实例 :{% url'blogpost' blog.id %}
而不是blogpost的id
二.

ValueError at /blogpost/6

need more than 1 value to unpack
这个报错也是由于id传参错误,将view视图中的处理详细blog页面的一部分改成如下
content = BlogPost.objects.get(pk=BlogPost_id)