Django - 没有帖子匹配给定的查询

时间:2016-06-11 02:21:23

标签: python django

我一直在通过示例' django中的教程构建博客。

我正在研究可以通过电子邮件分享博客文章的部分,当我运行它之前一切正常,直到我点击分享帖子'在条目下链接然后我得到以下404

Page not found (404)
Request Method: GET
Request URL:    http://127.0.0.1:8000/blog/1/share/
Raised by:  blog.views.post_share
No Post matches the given query.

我的理解是,这告诉我无法从数据库中找到帖子吗?好吧,我在django admin中有3个测试帖都可以看到它们已发布,当我通过django shell登录时,我可以看到所有3个帖子都在那里。

我已经多次查看我的代码,并且拥有该书随附的代码,并且看不到任何错误,这里是来自我项目应用程序的表单,视图,模型和url文件

https://github.com/davejonesbkk/mysite/blob/master/mysite/blog/forms.py
https://github.com/davejonesbkk/mysite/blob/master/mysite/blog/views.py
https://github.com/davejonesbkk/mysite/blob/master/mysite/blog/urls.py
https://github.com/davejonesbkk/mysite/blob/master/mysite/blog/models.py

我已经从那些遇到过类似问题的人那里读了一些其他的帖子,并尝试移动我的网址模式,但这并没有帮助。

这是一个屏幕抓取页面应该在我尝试分享时返回的内容

screen grab

这是返回404 btw的完整本地网址

http://127.0.0.1:8000/blog/1/share/

任何帮助都会受到赞赏,因为我难倒!

1 个答案:

答案 0 :(得分:2)

您的代码中有一个简单的拼写错误:

post = get_object_or_404(Post, id=post_id, status='pubished')

我想它应该是'published'