我一直在通过示例' 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
我已经从那些遇到过类似问题的人那里读了一些其他的帖子,并尝试移动我的网址模式,但这并没有帮助。
这是一个屏幕抓取页面应该在我尝试分享时返回的内容
这是返回404 btw的完整本地网址
http://127.0.0.1:8000/blog/1/share/
任何帮助都会受到赞赏,因为我难倒!
答案 0 :(得分:2)
您的代码中有一个简单的拼写错误:
post = get_object_or_404(Post, id=post_id, status='pubished')
我想它应该是'published'
。