【发布时间】:2020-06-30 21:44:22
【问题描述】:
任何帮助将不胜感激
浏览器给我这个错误:
AttributeError at /blog/
type object 'Post' has no attribute 'published'
Request Method: GET
Request URL: htp://mysite.com/blog/ (spelling errror on purpose)
Django Version: 3.0.7
Exception Type: AttributeError
Exception Value:
type object 'Post' has no attribute 'published'
Exception Location: /root/mysite/blog/views.py in post_list, line 4
Python Executable: /root/my_env/bin/python3
Python Version: 3.6.9
Python Path:
['/root/mysite',
'/usr/lib/python36.zip',
'/usr/lib/python3.6',
'/usr/lib/python3.6/lib-dynload',
'/root/my_env/lib/python3.6/site-packages']
Server time: Tue, 30 Jun 2020 21:31:42 +0000
服务器给我这个错误
使用 CONTROL-C 退出服务器。 内部服务器错误:/blog/
entTraceback (most recent call last):
File "/root/my_env/lib/python3.6/site-packages/django/core/handlers/exception.py", line 34, in inner
response = get_response(request)
File "/root/my_env/lib/python3.6/site-packages/django/core/handlers/base.py", line 115, in
_get_response
response = self.process_exception_by_middleware(e, request)
File "/root/my_env/lib/python3.6/site-packages/django/core/handlers/base.py", line 113, in
_get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/root/mysite/blog/views.py", line 4, in post_list
posts = Post.published.all()
AttributeError: type object 'Post' has no attribute 'publisheder code here
我讨厌购买电子书(即使是那些有良好评论或由知名公司出品的书)但效果不佳。我从 A. Mele 的 django3 书籍样本中得到了这一点。如果他们能让您深入了解您可能遇到的错误,那就太好了。
【问题讨论】:
-
我可以提供模型或视图文件,我确定错误发生在哪里,再次感谢您的帮助!
-
您的模型中似乎缺少已发布的属性。请发布您的视图和模型。您是否也应用了所有迁移?
-
我省略了一些行,但这是我的 models.py from .models import Post def post_list(request): posts = Post.published.all() return render (request,'blog/post/ list.html', {'posts': posts}) def post_detail(request, year, month, day, post): post = get_object_or_404(Post, slug=post, status='published', publish__year=year, publish__month=month , pubish__day=day) return render(request,'blog/post/detail.html',{'post': post})
-
我很抱歉我在 SO 上发布的新语法不好,这里是我的 views.py def post_list(request): posts = Post.published.all() return render (request,'blog/post /list.html', {'posts': posts}) def post_detail(request, year, month, day, post): post = get_object_or_404(Post, slug=post, status='published',
标签: python python-3.x django linux server