【发布时间】:2021-01-04 15:50:38
【问题描述】:
Django+ HTML:/HomeFeed/ 处的 EmptyPage 错误:此页面没有错误。当我注销并尝试访问同一页面时会发生这种情况。登录后,我可以访问相同的页面。它是否与我的观点或我的模板有关。如果您需要我的模板的一部分,请告诉我:)
谢谢!
def home_feed_view(request, *args, **kwargs):
context = {}
blog_posts = BlogPost.objects.all()
context['blog_posts'] = blog_posts
type_of_tinc = TypeoftincFilter(request.GET, queryset=BlogPost.objects.all())
context['type_of_tinc'] = type_of_tinc
paginated_type_of_tinc = Paginator(type_of_tinc.qs, 4)
page = request.GET.get('page')
tinc_page_obj = paginated_type_of_tinc.get_page(page)
context['tinc_page_obj'] = tinc_page_obj
blog_post = BlogPost.objects.filter(author=request.user.id).order_by('date_updated')
page = request.GET.get('page2')
own_account_post = Paginator(blog_post, 2)
try:
blog_post = own_account_post.page(page)
except PageNotAnInteger:
blog_post = own_account_post.page(2)
except EmptyPage:
blog_post = own_account_post.page(blog_post_paginator.num_pages)
context['blog_post'] = blog_post
return render(request, "HomeFeed/snippets/home.html", context)
models.py
class BlogPost(models.Model):
chief_title = models.CharField(max_length=50, null=False, blank=False)
author = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
body = models.TextField(max_length=5000, null=False, blank=False)
slug = models.SlugField(blank=True, unique=True)
class Account(AbstractBaseUser):
email = models.EmailField(verbose_name="email", max_length=60, unique=True)
username = models.CharField(max_length=30, unique=True)
date_joined = models.DateTimeField(verbose_name='date joined', auto_now_add=True)
last_login = models.DateTimeField(verbose_name='last login', auto_now=True)
is_admin = models.BooleanField(default=False)
is_active = models.BooleanField(default=True)
is_staff = models.BooleanField(default=False)
is_superuser = models.BooleanField(default=False)
追溯
During handling of the above exception (int() argument must be a string, a bytes-like object or a number, not 'NoneType'), another exception occurred:
blog_post = own_account_post.page(page)
【问题讨论】:
-
exclude就是你要找的东西 -
确认,` type_of_tinc = TypeoftincFilter(request.GET,queryset=BlogPost.objects.exclude(author=request.user.id).order_by('date_updated')) `
-
这样可以吗?
-
几乎 :)
.exclude(author=request.user)或.exclude(author_id=request.user.id) -
是否可以包含 .order_by('date_updated'))
标签: python html django django-models django-views