Безопасность колб не выдает никаких ошибок - PullRequest
0 голосов
/ 15 мая 2018

Я пытаюсь отобразить ошибки, которые должна генерировать защита от колб при неудачной регистрации, неправильной регистрации или чем-то еще, но на самом деле кажется, что ошибки даже не генерируются в моем проекте.

I 'Я использую пользовательский шаблон отображения помощника формы, который выглядит следующим образом (my_render_field):

{{ field(class="w3-input hidden-print w3-white", **kwargs)|safe }}
{% for error in field.errors %}
    <div class="w3-panel w3-red w3-display-container">
        <span onclick="this.parentElement.style.display='none'"class="w3-button w3-red w3-large w3-display-topright">&times;</span>
            <h3>Error!</h3>
            <p> {{ error }}</p>
    </div>
{% endfor %}

У меня есть эта штука, работающая для всех, кроме полей, сгенерированных фляг-безопасностью.У меня есть пользовательская форма входа в систему, которая выглядит следующим образом:

<form action="{{ url_for_security('login') }}" method="POST" name="login_form">
      {{ login_form.hidden_tag() }}
      {{ my_render_field(login_form.email, placeholder='Email') }}
      {{ my_render_field(login_form.password, placeholder='Password') }}
        <div>
      <input type="checkbox" class="w3-check" value="Remember"><label>{{ gettext('Remember Me') }}</label></input>
            </div>
      <input type="submit" class="w3-button w3-blue" value="Submit">
    </form>

Форма входа определяется следующим образом:

from flask_security import LoginForm

@security.login_context_processor
def security_login_processor():
    """ Simple function to inject flask-security's LoginForm into my login_form 
    This function also generates the localised title """
    return dict(login_form=LoginForm(), title=gettext('Sign In'))

Однако, убедившись, что SECURITY_FLASH_MESSAGES явно установлено в true, япопробуйте включить всплывающие сообщения, как это:

{% with messages = get_flashed_messages(with_categories=true) %}
    {% if messages %}
        {% for category, message in messages %}
            <p> {{ category }} - {{ message }}</p>
        {% endfor %}
    {% endif %}
{% endwith %}

И я никогда не получаю вывод.

РЕДАКТИРОВАТЬ:

Теперь кажется, что поля из LoginForm () не имеют валидаторов?Когда я использую login_user_form в моем представлении, он работает как положено, но это означает, что я не могу использовать измененную форму.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...