Рубрики
Без рубрики

Flask Python – Учебник для начинающих

Введение в фреймворк Phybry Python Web App. Помечено с колбой, Python, учебником, начинающим.

Hello Coders,

Эта статья направлена на помощь начинающим Колбы Популярные веб-структуры написаны в Python Отказ Чтобы следовать и узнать что-то из этого учебника Нет необходимости иметь предыдущий фон программирования, содержимое будет представлено наиболее простой возможным способом, улучшенным в какой-то момент с визуальными материалами.

Спасибо! Содержание, предоставленное Генератор приложений Отказ

** Темы охватывали **

  • Что такое Питон
  • Что такое Колбы
  • Что такое веб-каркас
  • Отверенный список с фляскими ресурсами
  • Краткий список с колбой начала
  • Установить колбу
  • Как установить зависимости
  • Полезные колбы модули
  • Построить настоящую колбу приложения
  • Развертывание с Heroku и Docker

Что такое Python

Python Является ли интерпретированным языком программирования (никакой фазы компиляции как для программ C/C ++) с настраиваемыми встроенными структурами данных высокого уровня, довольно привлекательными для быстрого развития приложений. Python Переводчик вместе со стандартными библиотеками доступны в источнике или двоичной форме все основные платформы (Linux, Windows или Mac).

Для выполнения программы Python нам нужно иметь интерпретатор Python, доступный в терминале. Первый шаг – получить доступ к официальному Скачать Страница, загрузите установщик для нашей операционной системы (Mac, Linux, M $ Windows) и выполните ее. Если установка идет хорошо, мы должны иметь возможность получить доступ к интерпретатору от оконного окна (PowerShell для Windows, Xterm для Linux …).

$ python --version
$ Python 3.7.2

Пожалуйста, установите версию Python 3.x, Python 2.x устарел и больше не поддерживается фундаментом Python.

Что такое колба

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

Что такое веб-каркас

Лучшее определение, которое я нашел, это: Веб-каркас - это набор компонентов и библиотек, предназначенных для упрощения процесса вашего веб-разработки. – источник HALKERNOON . Действительно, цель Веб-каркас Это облегчить нашу жизнь и обеспечить помощь в отношении повторяющихся конфигурации и модулей, требуемых несколькими проектами. Колба делает это безупречно.

Флэк-ресурсы

Короткий и исцеленный список. Не стесняйтесь предложить больше в комментариях.

Колбу начала

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

Для большего количества Dashboards администратора с открытым исходным кодом Пожалуйста, доступа к Appseed Платформа. Исходный код опубликован в рамках лицензии MIT на GitHub (ни один счет не требуется для использования кода).

Установить колбу

Самый простой способ установить колбу для использования Пип (Python Package Manager), который поставляется с бинарным распределением Python3.

$ pip install Flask

Чтобы проверить установку, мы можем открыть Python CLI и импорт колбы . Если модуль установлен правильно, мы не должны видеть ошибки после импорта.

$ python
$ Python 3.7.2 ... on win32
$ >>> from flask import Flask
$ >>> 

Как установить зависимости

Каждый проект имеет список зависимостей, обычно сохраняемых в требования .txt Файл, расположенный в корне проекта. Это обычная практика, видимая во многих проектах OpenSource и принята многими разработчиками (меня включенными). Мы можем установить модули двумя способами:

  • глобально, Как мы сделали в предыдущем разделе
  • используя Виртуальная среда – Рекомендуемый путь. Используя виртуальную среду (AKA VINV ) Модули будут установлены, изолированные в рабочей станции, обычно называемую песочница среда.

Простое использование случая для визуализации преимущества Venv.

Представьте, что у нас есть два приложения, которые используют разные версии колба. Если зависимости устанавливаются по всему миру, зависимости повлияют на настроек для другого приложения. Чтобы избежать этого случая использования, виртуальная среда помогает разработчику выполнить приложение, используя изолированную среду, и оба приложения используются в одно и то же время, без ошибок зависимостей.

Создание систем на основе Unix VINV

$ virtualenv --no-site-packages env
$ source env/bin/activate

Создать Venv для ОС Windows

$ # virtualenv --no-site-packages env
$ # .\env\Scripts\activate

Как только Venv создан и активирован, мы можем установить требования к проекту, используя Пип :

$ # Install requirements
$ pip3 install -r requirements.txt

Полезные колбы модули

Флэк использует сторонние библиотеки (или модули), чтобы обеспечить общие функции, используемые во многих проектах. Я сделаю здесь короткий список с популярными модулями. Не стесняйтесь предложить больше в комментариях, если я пропустил некоторые.

  • Flask-login – Создайте поток управления пользователя, и это заботится о страшных частях аутентификации, такими как управление сеансом и управление сессионным заездами.
  • Flask-mail – Отправка электронного письма важно для многих типов приложений, особенно если вы имеете дело с пользователями.
  • Flask-WTF – Этот модуль делает формы обработки ветером.
  • Flask-Sqlalchemy – Абстрактный объектно-ориентированный интерфейс для многих баз данных (mysql, sqlite, postgresql).
  • Алемический – Этот модуль является супер полезным, когда у нас есть база данных в производстве, и нам нужно обновить схему БД с новыми таблицами o мутание вещей на существующих таблицах. Во всех этого случаях Алембий поможет нам мигрировать Старая структура на новый, создавая необходимые SQL и скрипты.

Построил реальный колбу продуктом

Флэк панель инструментов черный Приложение, которое мы будем использовать в качестве образца, чтобы увидеть что-то хорошее на экране, это продукт с открытым исходным кодом в курсе Колбу На вершине красивого комплекта пользовательского интерфейса, предоставленного Creative-Tim Agency.

Источник доступен на GitHub, и любой может загружать код и использовать его для хобби или коммерческих проектов. Если у вас есть проблемы, используя его, AMA в комментариях.

Ссылки приложений

Инструкции по сборке (сохранено также в файле readme файл) перечислены ниже:

$ # Get the code
$ git clone https://github.com/app-generator/flask-black-dashboard.git
$ cd flask-black-dashboard
$
$ # Virtualenv modules installation (Unix based systems)
$ virtualenv --no-site-packages env
$ source env/bin/activate
$
$ # Virtualenv modules installation (Windows based systems)
$ # virtualenv --no-site-packages env
$ # .\env\Scripts\activate
$
$ # Install modules - SQLite Database
$ pip3 install -r requirements.txt
$
$ # OR with PostgreSQL connector
$ # pip install -r requirements-pgsql.txt
$
$ # Set the FLASK_APP environment variable
$ (Unix/Mac) export FLASK_APP=run.py
$ (Windows) set FLASK_APP=run.py
$ (Powershell) $env:FLASK_APP = ".\run.py"
$
$ # Set up the DEBUG environment
$ # (Unix/Mac) export FLASK_ENV=development
$ # (Windows) set FLASK_ENV=development
$ # (Powershell) $env:FLASK_ENV = "development"
$
$ # Start the application (development mode)
$ # --host=0.0.0.0 - expose the app on all network interfaces (default 127.0.0.1)
$ # --port=5000    - specify the app port (default 5000)  
$ flask run --host=0.0.0.0 --port=5000
$
$ # Access the dashboard in browser: http://127.0.0.1:5000/

Если все пойдет хорошо, мы должны увидеть приборную панель, вверх и запустить в браузере. Обратите внимание, что приложение Перенаправляет пользователей гостей на экран входа в систему. Пожалуйста, создайте новый пользователь, используя страницу регистрации и аутентифицируйте в приложение. По умолчанию приложение использует SQLite для сохранения информации о входе, но мы можем легко переключиться на другие базы данных, такими как MySQL или PostgressQL. Обещайте документировать это в отдельной статье.

Dashboard Flask – страница профиля пользователя

Flask Dashboard – Страница регистрации пользователя

Как уже упоминалось, приложение выпускается под лицензией MIT. Не стесняйтесь схватить код и добавить больше функций сверху. Краткий список с предложениями:

  • Добавьте другое поле в таблице пользователя – адрес
  • Обновите регистрационную форму, чтобы позволить пользователям добавить новую информацию
  • Отобразить новый Адрес поле на странице профиля

Развертывание

Кодирование приложения в нашей среде приятно, но выпустите его в дикую природу в Интернет Супер вознаграждение, особенно если является первым проектом. Чтобы развернуть встроенное приложение Flask, у нас есть много вариантов, которые зависят от сервера и платформы, которую мы используем.

Развертывание на Героку

Самый простой способ IMO – использовать Heroku Платформа. Конечно, нам нужен аккаунт на платформе, а также Heroku CLI установлен в нашей среде. Пожалуйста, найдите ниже шаги для развертывания приборной панели Flask Black на Heroku:

$ # Get the code
$ git clone https://github.com/app-generator/flask-black-dashboard.git
$ cd flask-black-dashboard
$
$ # Heroku Login
$ heroku login
$
$ # Create the app in Heroku platform
$ heroku create # a random name will be generated by Heroku
$
$ # Push the source code and trigger the deploy
$ git push heroku master
$
$ # Visit the deployed app in browser.
$ heroku open

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

Докер

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

Если вы хотите полностью понять весь процесс за развертыванием Docker, не стесняйтесь доступа к статье, полностью посвященной этой теме: Flask Dashboard – исполнение с Docker. Основные шаги:

Получите код из GitHub, используя Git

$ git clone https://github.com/app-generator/flask-black-dashboard.git
$ cd flask-black-dashboard

Начните приложение в Docker

$ sudo docker-compose pull && sudo docker-compose build && sudo docker-compose up

Посетить http://localhost:5005 в вашем браузере. Приложение должно быть и работает.

Развертывание не является легкой темой, которая будет перевариваться новичком, и я предпочитаю предоставить образец 100% настроен и скрыть реальную сложность, покрываемую некоторыми приятными сценариями. Чтобы объяснить варианты развертывания, нам нужна полная статья, которая представляет возможные и рекомендуемые архитектуры.

Для определенной конфигурации развертывания не стесняйтесь AMA в комментариях. Я буду рад помочь и обеспечить дополнительное мнение.

Спасибо за прочтение! Ваш, с большим уважением!

Оригинал: “https://dev.to/sm0ke/flask-python-tutorial-for-beginners-222f”