Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Mensagem sendo exibida varias vezes

Olá, executei o código que foi ensinado e deu certo, porém, ao exibir a mensagem de erro, ela acaba se repetindo várias vezes e não sei o que fazer. Já refiz e continua dando o mesmo erro.

Segue o partial de mensagem:

{% if messages %} {% for message in messages %}

<div class="alert alert-{{message.tags}}" role='alert'>
        {{message}}
</div>
{% endfor %}

{% endif %}

Segue html que faz uso desse partial: {% extends 'base_template.html'%} {%load static %} {%block content%}

{%include 'partials/_headerExterno.html' %}
{% include 'partials/_mensagens.html' %}
    <main class="container-xl d-flex flex-column justify-content-center align-items-center p-4">
        {% include 'partials/_mensagens.html'%}
        <form action="{% url 'authLogin' %}" method="POST" class="d-flex flex-column justify-content-center align-items-center mt-3">
            {% csrf_token %}
            <h2 class="text-center mb-3">Faça seu login</h2>
            <div class="form-group d-flex flex-column">
                <label class="text-center">
                    Tipo de Usuário:
                    <select type="text" class="form-control mt-3" name="login_tipo">
                        <option value="Administrador">Administrador</option>
                        <option value="Funcionario">Funcionário</option>                                                
                    </select> 
                </label>
                <label class="text-center">
                    Digite seu email:
                    <input type="email" class="form-control mt-3"  name="email_acesso">
                </label> 
                <label class="text-center" class="login_senha">
                    Digite sua senha:
                    <input type="password" class="form-control mt-3" name="login_senha">
                </label>
                <div clas="form-group p-4 mt-5">
                    <button type="submit" class="btn btn-primary form-control mt-3">Acessar</button>
                </div>
            </div>             
        </form>        
    </main>
{%include 'partials/_footerExterno.html' %}

{% endblock %}

Segue o base.html:

{%load static %}

{% block content%} {% endblock %}

Segue views.py:

def dashboard(request): if request.user.is_authenticated:

    dados={
        'title':'Dashboard',
    }

    return render(request,'estoque/dashboard.html',dados)
else:
    messages.error(request,'Usuário não autenticado.')
    return redirect('render_login')
2 respostas
solução!

Boa tarde Raul. Tudo bem? No ínicio do seu html, você está incluindo duas vezes a partial de mensagens.

**{% include 'partials/_mensagens.html' %}**
    <main class="container-xl d-flex flex-column justify-content-center align-items-center p-4">
     **{% include 'partials/_mensagens.html'%}**
        <form action="{% url 'authLogin' %}" method="POST" class="d-flex flex-column justify-content-center align-items-center mt-3">

Deixa somente uma chamada.

Nada como uma visão externa da situação. Procurei a torto e a direito e não tava achando rsrsrs. Muito obrigado!!! Salvou.