Проблема с созданием веб-страницы
У меня проблемы с созданием представления. Ниже вы можете найти мое представление. Я продолжаю получать ошибку шаблона. Я не уверен, где я ошибся...
class PrivacyView(CreateView):
model = Post
template_name = 'privacy_policy.html'
fields = '__all__'
def form_valid(self, form):
form.instance.post_id = self.kwargs['pk']
return super().form_valid(form)
success_url = reverse_lazy('post_list')
def post_list(request, tag_slug=None):
posts = Post.published.all()
tag = None
if tag_slug:
tag = get_object_or_404(Tag, slug=tag_slug)
posts = posts.filter(tags__in=[tag])
query = request.GET.get("q")
if query:
posts = Post.published.filter(Q(title__icontains=query) | Q(tags__name__icontains=query)).distinct()
paginator = Paginator(posts, 10) # 10 posts in each page
page = request.GET.get('page')
try:
posts = paginator.page(page)
except PageNotAnInteger:
# If page is not an integer deliver the first page
posts = paginator.page(1)
except EmptyPage:
# If page is out of range deliver last page of results
posts = paginator.page(paginator.num_pages)
return render(request, 'post_list.html', {'posts': posts, page: 'pages', 'tag': tag})
Не уверен, где я ошибаюсь. Если вы можете оказать какую-либо помощь, пожалуйста, сделайте это.
Существует проблема с возвратом
return render(request, 'post_list.html', {'posts': posts, page: 'pages', 'tag': tag})
Передавая переменную 'pages', вы перепутали порядок, поэтому должно быть так.
return render(request, 'post_list.html', {'posts': posts, 'pages': page, 'tag': tag})
Это не приведет к ошибке, но некоторые данные не будут переданы на веб-страницу.