сегментировать структуру веб-приложения с помощью Flask Blueprint | Easy2Digital

Изучите схему Flask для начинающих, и вы сможете научиться структурировать на самом раннем этапе разработки веб-приложений или DApp.

В большинстве случаев нам нужно применить один и тот же набор структуры, контента или данных только с разными настройками языка и локализации. Знакомые примеры — подпапки, локализация.

Чтобы сделать это эффективно, я бы рассмотрел схему Flask для начинающих, и вы можете узнать, как структурировать на самом раннем этапе разработки веб-приложений или DApp, что впоследствии упростит всю работу.

Содержание: Сегментация структуры веб-приложения с помощью Flask Blueprint

Что такое Flask Blueprint

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

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

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

Некоторые преимущества использования Flask Blueprint включают в себя:

  1. Модульная организация. Схемы позволяют разбить приложение на более мелкие повторно используемые модули, что упрощает управление и обслуживание.
  2. Совместная разработка: несколько разработчиков могут одновременно работать над разными чертежами, что позволяет лучше сотрудничать и разделять задачи.
  3. Префикс URL-адреса: чертежам может быть назначен префикс URL-адреса, что упрощает определение маршрутов с общим базовым URL-адресом.
  4. Наследование шаблонов и статических файлов: Blueprints могут определять свои собственные шаблоны и статические файлы, которые могут наследоваться основным приложением или другими Blueprints.
  5. Обработка ошибок: Blueprints может определять свои собственные обработчики ошибок, что позволяет настраивать обработку ошибок в определенных частях приложения.

Структура слоев и папок

По сравнению со структурой Blueprint, в основном обычная практика требует, чтобы разработчики добавили три обязательных документа в корневой каталог, а именно app.py, html-скрипт в папке шаблонов и остальные материалы, CSS или JS в статике. Две папки и app,py находятся в корневой папке.

И наоборот, при использовании Blueprint убедитесь, что любые префиксные слои или сценарии подпапок нельзя поместить в корневую папку. Сохраняйте app.py только с функцией create_app(), чтобы сервер Flask мог правильно определить скрипт активации.

Для каждого Blueprint требуются три обязательных элемента, как указано выше (статическая папка, папка шаблонов и скрипт ветки.

Конфигурация схемы филиала

Как только папки и пути будут готовы, мы можем приступить к настройке плана. На стороне ответвления нам нужно импортировать flask и blueprint, чтобы создать объект с дополнительными модулями и информацией. Вот образец следующим образом:

From flask import Blueprint

JPSiteScript = Blueprint ( 'japaneseSite' , __name__ , template_folder = "templates" , static_folder = 'static/assets' , static_url_path = '/static/assets' )

Затем мы можем продолжить настраивать маршруты следующим образом, используя japaneseSite вместо приложения без Blueprint.

# Define routes and functions

@japaneseSite.route('/login')

def login():

return 'Login page'

Основная конфигурация приложения

В основном файле app.py нам также нужно сообщить Flask, сколько у нас есть Blueprint и какие они. Итак, вот способ зарегистрировать каждый план

From abc import JPSiteScript

app.register_blueprint(JPSiteScript, url_prefix='/jp')

Я хотел бы подробно остановиться на url_prefix, особенно здесь, поскольку это метод для настройки структуры сайта с несколькими странами с его использованием. Нам не нужно настраивать по одному в каждом Blueprint. Url_prefix означает, что все маршруты из этого конкретного Blueprint будут использовать /jp в качестве подпапки в пути URL. Супер удобно.

Пример сценария Python для структуры веб-приложения с использованием Flask Blueprint (включая интеграцию с базой данных, интеграцию аутентификации пользователей с использованием Blueprint)

Если вам интересна Глава 82 — Сегментирование структуры веб-приложения с помощью Flask Blueprint, пожалуйста , подпишитесь на нашу рассылку , добавив сообщение «Глава 82+ Полные скрипты настроек Flask Blueprint . Мы отправим вам сценарий, когда будет запущен обновленный сценарий приложения.

Надеюсь, вам понравится читать главу 82 — Сегментирование структуры веб-приложения с помощью Flask Blueprint. Если вы это сделали, пожалуйста, поддержите нас, выполнив одно из перечисленных ниже действий, потому что это всегда помогает нашему каналу.

  • Поддержите и пожертвуйте нашему каналу через PayPal ( paypal.me/Easy2digital )
  • Подпишитесь на мой канал и включите колокольчик уведомлений канала Easy2Digital Youtube .
  • Подписывайтесь и лайкайте мою страницу Страница Easy2Digital в Facebook
  • Поделитесь статьей в своей социальной сети с хэштегом #easy2digital
  • Вы подписываетесь на нашу еженедельную рассылку, чтобы получать последние статьи, видео и коды скидок Easy2Digital.
  • Подпишитесь на наше ежемесячное членство через Patreon, чтобы пользоваться эксклюзивными преимуществами ( www.patreon.com/louisludigital )