Создание простой страницы входа с использованием Flask

Создание простой страницы входа с использованием Flask

Создание простой страницы входа с использованием Flask

Flask — это легкий и гибкий веб-фреймворк для Python, который позволяет быстро создавать веб-приложения. Он предоставляет простой способ создания страниц входа в систему для ваших веб-приложений. В этой статье мы рассмотрим, как создать базовую страницу входа с использованием Flask.

Установка Flask

Перед тем как начать, убедитесь, что у вас установлен Flask. Если нет, вы можете установить его с помощью pip:

pip install Flask

Начало

Давайте начнем с создания основного файла нашего приложения app.py. Вот простой пример того, как это может выглядеть:

from flask import Flask, render_template, request, redirect, url_for



app = Flask(__name__)



# Фиктивная база данных пользователей

users = {'username': 'password'}



@app.route('/')

def index():

    return render_template('index.html')



@app.route('/login', methods=['GET', 'POST'])

def login():

    if request.method == 'POST':

        username = request.form['username']

        password = request.form['password']

        if username in users and users[username] == password:

            # Аутентификация успешна

            return redirect(url_for('dashboard'))

        else:

            # Аутентификация не удалась

            return render_template('login.html', error='Неверное имя пользователя или пароль')



    # Если это GET-запрос, просто отображаем страницу входа

    return render_template('login.html')



@app.route('/dashboard')

def dashboard():

    return render_template('dashboard.html')



if __name__ == '__main__':

    app.run(debug=True)

HTML-шаблоны

Теперь мы создадим HTML-шаблоны для нашего приложения. Мы создадим три шаблона: index.html для главной страницы, login.html для страницы входа и dashboard.html для панели управления.

index.html:

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Главная</title>

</head>

<body>

    <h1>Добро пожаловать на главную страницу</h1>

    <a href="{{ url_for('login') }}">Войти</a>

</body>

</html>

login.html:

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Вход</title>

</head>

<body>

    <h1>Вход</h1>

    {% if error %}

        <p style="color: red;">{{ error }}</p>

    {% endif %}

    <form method="post" action="{{ url_for('login') }}">

        <label for="username">Имя пользователя:</label>

        <input type="text" id="username" name="username" required><br>

        <label for="password">Пароль:</label>

        <input type="password" id="password" name="password" required><br>

        <input type="submit" value="Войти">

    </form>

</body>

</html>

dashboard.html:

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Панель управления</title>

</head>

<body>

    <h1>Добро пожаловать в панель управления</h1>

    <a href="{{ url_for('index') }}">На главную</a>

</body>

</html>

Запуск приложения

Теперь мы можем запустить наше приложение. Просто запустите app.py, и ваше веб-приложение будет доступно по адресу http://127.0.0.1:5000/.

python app.py

Таким образом, мы создали динамическую Web-страницу c Python, о чем подробно рассказано в видеокурсе Программирование на Python с Нуля до Гуру.

Теперь, когда вы перейдете на главную страницу, вы увидите ссылку на страницу входа. После входа в систему вы будете перенаправлены на панель управления. Если учетные данные введены неправильно, вы увидите сообщение об ошибке на странице входа.

Это основы создания простой страницы входа с использованием Flask. Вы можете расширить этот пример, добавив функции аутентификации и разграничения доступа по мере необходимости для вашего веб-приложения.

Источник

НЕТ КОММЕНТАРИЕВ

Оставить комментарий