Jelajahi Sumber

Добавил авторизацию по логину, в страницу регистрации добавил кнопку перехода на страницу авторизации, на главной странице изменил кнопку регистрации на кнопку авторизации

Andrei 3 tahun lalu
induk
melakukan
4a8a967d86
4 mengubah file dengan 12 tambahan dan 6 penghapusan
  1. 2 2
      forms/login.py
  2. 5 2
      main.py
  3. 2 2
      templates/main.html
  4. 3 0
      templates/register.html

+ 2 - 2
forms/login.py

@@ -1,10 +1,10 @@
 from flask_wtf import FlaskForm
-from wtforms import EmailField, PasswordField, BooleanField, SubmitField
+from wtforms import StringField, PasswordField, BooleanField, SubmitField
 from wtforms.validators import DataRequired
 
 
 class LoginForm(FlaskForm):
-    login = EmailField('Почта', validators=[DataRequired()])
+    login = StringField('Почта', validators=[DataRequired()])
     password = PasswordField('Пароль', validators=[DataRequired()])
     remember_me = BooleanField('Запомнить меня')
     submit = SubmitField('Войти')

+ 5 - 2
main.py

@@ -97,8 +97,11 @@ def login():
         danger = request.args.get('danger') if request.args.get('danger') else False
         form = LoginForm()
         if form.validate_on_submit():
-            db_sess = db_session.create_session()
-            user = db_sess.query(User).filter(User.email == form.login.data).first()
+            data_session = db_session.create_session()
+            user = data_session.query(User).filter(User.email == form.login.data).first()
+            if not user:
+                user = data_session.query(User).filter(User.login == form.login.data).first()
+            data_session.close()
             if user and user.check_password(form.password.data):
                 if user.activated:
                     login_user(user, remember=form.remember_me.data)

+ 2 - 2
templates/main.html

@@ -13,9 +13,9 @@
         <strong class="header_title_2">Самый удобный сайт для создания проектов</strong>
     </div>
     <div class="header_buttons">
-        <a class="header_button" href="/register">
+        <a class="header_button" href="/login">
             <div class="header_button_text">
-                <p>Регистрация</p>
+                <p>Авторизация</p>
             </div>
         </a>
         <a class="header_button" id="link_to_about" href="#about_block">

+ 3 - 0
templates/register.html

@@ -37,6 +37,9 @@
                     </div>
                     <div class="form_data_button">
                         {{ form.submit(type="submit", class="register_button") }}
+                        <a class="auth_button" type="submit" href="/login">
+                            <div class="auth"><strong>Уже есть аккаунт?</strong></div>
+                        </a>
                     </div>
                 </div>
                 <div class="message_block">