Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Else invalido: Erro: 'else',expected'empty'or'endfor'.Did you forget to register or load this tag?

Erro: Template Syntax Error

Views:

def index(request):
    receitas = Receita.objects.order_by('-data_criacao').filter(publicada=True)
    paginator = Paginator(receitas, 6)
    page = request.GET.get('page')
    receitas_por_pagina = paginator.get_page(page)

    return render(request, 'receitas/index.html', {'receitas': receitas_por_pagina})

HTML:

<section class="top-catagory-area section-padding-20-0">
  <div class="container">
    {% if receitas.has_other_pages %}
    <ul class="pagination">
      {% if receitas.has_previous %}
      <li class="page-item">
        <a href="?page={{ receitas.previous_page_number }}" class="page-link"
          >«</a
        >
      </li>
      {% else %}
      <li class="page-item disabled">
        <a class="page-link">«</a>
      </li>
      {% endif %} {% for pagina in receitas.paginator.page_range %} {% if
      receitas.number == pagina %}
      <li class="page-item active">
        <a class="page-link">{{ pagina }}</a>
      </li>
      {% else %}
      <li class="page-item">
        <a href="?page={{pagina}}" class="page-link">{{pagina}}</a>
      </li>
      {% endif %} {% endfor %} {% if receitas.has_next %}
      <li class="page-item">
        <a href="?page={{ receitas.next_page_number }}" class="page-link"
          >»</a
        >
      </li>
      {% else %}
      <li class="page-item disabled">
        <a class="page-link">»</a>
      </li>
      {% endif %}
    </ul>
    {% endif %}
  </div>
</section>
1 resposta
solução!

O erro está no fato do if quebrar linhas, isso ocorreu pela formatão ao salvar do VS Code, para corrigir apenas adicionei um comentario na linha acima, apesar de ser uma certa gambiarra, não poluí o codigo, segue a solução:

Uma tag de modelo deve começar (com {%) e terminar (com %}) na mesma linha. Caso contrário, o analisador de linguagem de template do Django apresentará um erro.

Erro:

 {% endif %} {% for pagina in receitas.paginator.page_range %} {% if
      receitas.number == pagina %}
      <li class="page-item active">
        <a class="page-link">{{ pagina }}</a>
      </li>

Solução:

 {% endif %} {% for pagina in receitas.paginator.page_range %} 
 <!---->
 {% if receitas.number == pagina %}
      <li class="page-item active">
        <a class="page-link">{{ pagina }}</a>
      </li>

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software