Помогите c flask-security

73 views
Skip to first unread message

Solomon Solomonov

unread,
Nov 4, 2013, 7:15:32 AM11/4/13
to flask-...@googlegroups.com
Доброго всем времени суток
Имеется следующая проблема с настройкой flask-security
дело в том что я хочу чтобы форма логина была у меня на главной страничке
по примеру Михаила, описанному в группе делаю следующее

<form id="login_form" align="right" action="{{ url_for_security('login') }}" method="post"  accept-charset="UTF-8">
<input id="email" type="text" placeholder="E-mail" name="email"/>
<input id="password" type="password" placeholder="Пароль" name="password" /></br>
                        <button class="act">Вход</button>
</form>

При нажатии кнопки, меня перекидывает на вьюху логина, при этом забито только поле "email", мне же нужно чтобы пользователь залогинился с главной, без редиректа на какие либо странички
Официальную документацию к пакету прочитал, но видимо то то недогоняю
Ребят в общем помогите пожалуйста советом, чет голова уже устала думать
Message has been deleted
Message has been deleted

Solomon Solomonov

unread,
Nov 5, 2013, 6:42:10 AM11/5/13
to flask-...@googlegroups.com
Если кому будет полезно:
Добавляем формы в текущее представление
from flask.ext.security.forms import LoginForm
Присваиваем имя
@app.route('/')
def index():
    return render_template("index.html",
        title = 'Home',
        form = AllForm(),
        login_form = LoginForm())
Дальше рендерим на уже имеющейся основе
{% from "security/_macros.html" import render_field_with_errors, render_field %}
{% include "security/_messages.html" %}
<form id="login_form" align="right" action="{{ url_for_security('login') }}" method="POST" name="login_form">
  {{ login_form.hidden_tag() }}
  {{ render_field_with_errors(login_form.email) }}
  {{ render_field_with_errors(login_form.password) }}
  {{ render_field_with_errors(login_form.remember) }}
  {{ render_field(login_form.next) }}
  {{ render_field(login_form.submit) }}
</form>
Настраиваем как хотим с помошью css
Поменять лейблы можно в файле \site-packages\flask_security\forms
Переименовав например 
'password': 'pasword', на 'password': u'Пароль',
Радуемся) Если кому помогло пишем пасибки, не стесняемся
Reply all
Reply to author
Forward
0 new messages