Панель инструментов Flask Argon — изучите Flask, написав код панели администратора
Привет Кодер,
Цель этой статьи — помочь новичкам написать свой собственный готовый код. Панель управления флягой дополнен базой данных SQLite, ORM и аутентификацией, а также удобным пользовательским интерфейсом. Полученное приложение опубликовано на Github под лицензией MIT, а полный набор функций приведен ниже:
- База данных SQLite/PostgreSQL, SQLAlchemy ORM
- Модульная структура по чертежам
- Поток аутентификации на основе сеанса (вход, регистрация)
- Хэширование пароля через Passlib
В спешке? Вы можете оформить заказ страница панели инструментов или гитхаб источники
Окружение
Чтобы закодировать и обновить наше приложение в Колба нам нужно как минимум установить Python и Flask.
pip install Flask
Чтобы проверить установку, откройте консоль Python и введите:
$ python
$ >>> from flask import Flask
$ >>>
Если ваш терминал переполнен ошибками, Flask готов ввести стероиды в наше приложение.
Структура панели инструментов
Поскольку Flask — отличный фреймворк, у разработчика есть полная свобода при создании нового приложения. Весь код можно сохранить в одном файле или логически разбить по файлам и каталогам. Выбранная структура показана ниже:
Мы можем легко отметить модульные файлы, разделенные на функциональную часть (представления, модели), статику и шаблоны. В любом случае, если эта структура не соответствует вашему вкусу, не стесняйтесь обновить ее соответствующим образом.
(Аргон) Дизайн
Чтобы в итоге получить полезный продукт, нам нужен красивый дизайн, интегрированный в наше будущее приложение. Лично я большой поклонник команды разработчиков этого проекта, потому что они выпускают пригодные для использования продукты под лицензией MIT. Приборная панель Argon не исключение.
Доступ к базе данных
Любая информационная панель должна иметь базу данных для аутентификации и ввода информации в диаграммы. В этом разделе приложение использует библиотеку Flask-SQLAlchemy, чтобы избежать написания необработанных предложений SQL, таких как «выбрать * из ..»
Давайте посмотрим, как это помогает SQLAlchemy выбирать данные из базы данных:
$ flask shell
$ >>> from app.models import User
$ >>> User.query.all()
<User 1>
User.query.all()
возвращать все строки таблицы как объекты, а манипулирование информацией для удаления, создания и обновления становится довольно простой задачей.
Поток аутентификации
Как я уже сказал, в приложение включены батареи, а также готовые к использованию вход в систему, выход из системы и регистрация. Внедрение аутентификации в приложение Flask может занять много времени, если ядро Flask не полностью понято.
Улучшения оболочки
Это приложение также можно экспортировать как статическое приложение с помощью двух замечательных библиотек:
- Нажмите — помогите нам обработать пользовательскую команду в CLI Flask
- Замороженная колба — Создайте статическую версию нашего приложения и полностью удалите промежуточное ПО Flask.
Соответствующий код сохраняется в запустить.py
import click
from flask_frozen import Freezer
from app import app
from app import db
@app.cli.command()
def build():
freezer = Freezer(app)
freezer.freeze()
if __name__ == "__main__":
app.run()
Скриншоты приложения
Как это использовать
Как упоминалось ранее, проект выпущен под лицензией MIT на Github для использования кем угодно. Если вы хотите создать приложение, не покидая этой страницы, откройте предпочитаемый терминал и введите:
$
$ git clone
$ cd flask-boilerplate-dashboard-argon
$
$
$ virtualenv --no-site-packages env
$ source env/bin/activate
$
$
$
$ pip install -r requirements-sqlite.txt
$
$
$ pip install -r requirements.txt
$
$
$ (Unix/Mac) export FLASK_APP=appseed-app.py
$ (Windows) set FLASK_APP=appseed-app.py
$ (Powershell) $env:FLASK_APP = ".\appseed-app.py"
$
$
$ flask run --host=0.0.0.0
$
$
Ссылки на панель инструментов
Спасибо!
Кстати, меня (никнейм) зовут См0ке и я много пишу о Dev.to