flask python что это такое

What the flask?

flask python что это такое
Вообще-то, это картинка от wtforms, но у меня гимп почему-то не запускается.

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

Однажды, меня спросили: что плохого во flask? Тогда меня полностью устраивал этот милый фреймворк. Поработав с ним какое-то время, я написал все, что думаю, в рабочий слак, на что мне ответили: «Мурад, будь добрее». Вообще, я добрый и пушистый, но wtf?!

Стоит отметить, что я являюсь большим поклонником работы Армина. Его пакеты используются во многих мои проектах. А еще он невероятная заноза в сообществе Python. И это хорошо.

Flask

Flask — это обертка над очень крутыми обособленными проектами. Некоторые сравнивают его с джангой. Я хз почему.

Если попытаться описать все проблемы фласка в двух пунктах:

Все. Дальше можно не читать. Но если все еще не понятно, листаем дальше.

Blueprints

Вложенность

А ее нет. Нельзя просто так взять и сделать вложенный неймспейс. В сети можно найти «решения», но здесь я буду рассматривать только коробочный фласк, потому что написать-то можно все.

Импорты

Когда вы делаете так в продакшен коде:

Где-то в мире грущу я! Берегите меня, выносите это в сеттинги.

Концептуально. Но работать не будет. Потому что пару строчек назад мы импортировали пакет в myapp и навечно заказали себе путь туда.

Погодите, должен быть выход! Ага!

И это не работает. Потому что current_app доступен только в контектсте реквеста!

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

Кстати, для джанги на этот случай у меня есть специальная батарейка.
Просто представьте себе прекрасный дивный мир, где django.conf.settings доступен только в контексте реквеста!

flask.g

В нее можно пробросить все необходимое:

Однако, это будет работать только в контексте реквеста, как и любые другие магические объекты фласка.

Роутинг урлов и их методы

У меня на сайте есть такой кусок урлов:

Fask, что с тобой не так?

Стейк!

А. Погодите. Это мне. Омн-омн-омн.

flask-wtf. CSRF

Ох. Допустим, нам нужно отключить проверку в одной вьюхе:

Ура! Можно передать путь до вьюхи (в версии, которая вышла две недели назад)! Пробуем:

Не работает. На самом деле (ненавижу это выражение), мы подменили имя вьюхи, когда вызывали ApiView.as_view(‘api_view’) :

И «все равно», что мы указываем путь до объекта, которого нет. Работает! Не работает.

А знаете почему? Потому что форма. Она ничегошеньки не знает про вьюху:

Вот теперь работает.

url_for()

Допустим, вы хотите сделать так:

Забудьте. Вне контекста не работает. Наверное, можно сделать свой ленивый объект, в конце-концов, в джанге это тоже не сразу появилось.

flask-testing

Штука, призванная помочь с тестами. Например, можно заглянуть в контекст, который передается в шаблон. А давайте попробуем:

Ой. Что-то пошло не так. А знаете что? Я вот тоже не знаю.
На самом деле (ненавижу это выражение), я схватил NotImplementedError в одном из методов, которые не переопределил. Но поинт в том, что уронив тесты, вам ни за что не понять в чем причина.

Всякое разное

В процессе ковыряния фласка, нашел несколько моментов:

Здесь что-то происходит. Это все, что я понимаю.

Источник

Flask против Django: почему Flask может быть лучше

flask python что это такое

flask python что это такое

Flask и Django – два самых популярных веб-фреймворка для Python (конечно, существуют и другие). В этой статье я рассмотрю аспекты, на которые вам стоит обратить внимание, выбирая между Flask и Django. Мы также рассмотрим приложение «Hello, World» в каждом из них, чтобы лучше разобраться в том, как они работают. Учтите, что я пользуюсь Flask на протяжении длительного периода времени, и всегда склоняюсь к нему, но в данной статье я буду максимально объективным.

Погодите, зачем мне веб-фреймворк и что это вообще такое?

Начиная разрабатывать приложения в Python, вы, скорее всего, разработали так называемые «приложения командной строки». Пользователю нужно запустить эти скрипты в оболочке, или командной строке и передать вводимые данные в качестве аргументов, или через стандартный ввод. Несколько лет назад, естественное развитие от построения таких приложений до создания GUI приложений – программы, которая позволяет пользователю взаимодействовать при помощи мыши и клавиатуры, в которой содержатся несколько меню и других интерактивных элементов.

В наши дни заметен большой сдвиг в сторону разработки веб приложений – ваши пользователи могут работать с вашей программой через браузер. Если вы решились на создание веб приложения, и вы решили сделать это в Python, вам определенно понадобится так называемый веб фреймворк. Построение бэкенд логики, пользовательского интерфейса и собрания всего связанного с Интернетом и навигацией пользователя в вашем приложении через браузер состоит из повторяемых и скучных частей. Веб-фреймворк нацелен на реализацию всех функциональных возможностей, общих для большей части веб-приложений, таких как сопоставление URL-адресов частям кода Python.
Именно от того, что представляет собой тот или иной фреймворк зависит то, что остается разработчику для создания приложения. Ключевая разница между Flask и Django это:

Мы рассмотрим разницу между ними более детально.

Краткое сравнение

Если вы читаете эту статью для краткого описания, тогда этот раздел для вас!

Ключевые различия:

Выбирайте на основании следующего:

Больше информации:

Django существует дольше – первое издание было в 2005 году, в то время как Flask появился в 2010. Django также является более популярным – в январе 2017 в StackOverflow насчитывалось 2631 вопросов о Django, и лишь 575 о Flask. Оба фреймворка набирают популярность, если мы берем StackOverflow в качестве мерила.

flask python что это такое

Hello, World!

Первое, что люди всегда делают, когда они изучают новую технологию, это следуют самому простому набору шагов, чтобы получить выдачу «Hello, World!«. Ниже, мы тоже последуем этому примеру и построим приложения «Hello World» в Flask и Django. Обратите внимание на то, что Flask, главными чертами которого являются минимализм и простота, позволяет нам запустить «Hello World» намного быстрее, но это не говорит о том, что Flask лучше по всем параметрам. Возможно, это займет меньше времени и усилий для создания более тонкого веб приложения (вроде такого, которое обрабатывает и проверяет вводимые пользователем данные и сохраняет их в базу данных) если сделать это в Django, а не в Flask. В любом случае, рассмотрев оба проекта Hello World, мы получим более широкое представление об этих двух фреймворках. Также мы лучше познакомимся с тем, как это происходит изнутри.

Есть вопросы по Python?

На нашем форуме вы можете задать любой вопрос и получить ответ от всего нашего сообщества!

Telegram Чат & Канал

Вступите в наш дружный чат по Python и начните общение с единомышленниками! Станьте частью большого сообщества!

Паблик VK

Одно из самых больших сообществ по Python в социальной сети ВК. Видео уроки и книги для вас!

Flask

flask python что это такое

Первое, что нам нужно сделать в нашем списке работы с Flask, это установить Flask. Это делается легко при помощи pip. В зависимости от того, как ваш pip установлен, и в какой версии Python вы работаете, вам может не понадобится использовать 3 или флаг —user в следующей команде:

После этого, создайте файл Python, под названием flaskhello.py, и введите следующий код:

Давайте разберемся с тем, что делает этот код:

Хотите совершить недорогую покупку подписчиков в Одноклассниках? Мы знаем, где это сделать — на сервисе doctorsmm. Здесь Вам предложат персональные условия для приобретения ресурса с возможностью выбора оптимальной скорости и качества аккаунтов. Успейте совершить заказ, пока на сайте действуют оптовые скидки.

Источник

#3 Основы Flask

Hello World во фреймворке Flask

Начать знакомство с Flask можно с создания простого приложения, которое выводит “Hello World”. Создаем новый файл main.py и вводим следующий код.

Остановить сервер можно с помощью комбинации CTRL+C.

Создание приложения Flask

У каждого Flask-приложения должен быть экземпляр класса. Экземпляр — это WSGI-приложение (WSGI – это интерфейс для взаимодействия сервера с фреймворком), которое показывает, что сервер передает все полученные запросы экземпляру для дальнейшей обработки. Объект класса Flask создается следующим образом:

Создание route (путей)

Маршрут (или путь) используется во фреймворке Flask для привязки URL к функции представления. Эта функция отвечает на запрос. Во Flask декоратор route используется, чтобы связать URL адрес с функций. Вот как маршрут создается.

Как вариант можно использовать метод add_url_rule() вместо декоратора route для маршрутизации. add_url_rule() — это простой метод, а не декоратор. Помимо URL он принимает конечную точку и название функции представления. Конечная точка относится к уникальному имени маршрута. Обычно, название функции представления — это и есть конечная точка. Flask может генерировать URL из конечной точки, но об этом позже. Предыдущий код аналогичен следующему:

Декоратор route используется в большинстве случаев, но у add_url_rule() есть свои преимущества.

Функция представления должна вернуть строку. Если пытаться вернуть что-то другое, сервер ответит ошибкой 500 Internal Sever Error.

Можно создать столько столько, сколько нужно приложению. Например, в следующем списке 3 пути.

Для одной функции представления может быть использовано несколько URL. Например:

Если перейти по адресу, для которого нет соответствующей функции представления, появится ошибка 404 Not Found.

Вместе этого можно отметить динамические части URL как (переменные). Эти части потом будут передавать ключевые слова функции отображения. Следующий код демонстрирует путь с динамическим элементом.

В этом списке все конвертеры, доступные во Flask:

КонвертерОписание
stringпринимает любые строки (значение по умолчанию).
intпринимает целые числа.
floatпринимает числа с плавающей точкой.
pathпринимает полный путь включая слеши и завершающий слеш.
uuidпринимает строки uuid (символьные id).

Запуск сервера

Условие __name__ == «__main__» гарантирует, что метод run() будет вызван только в том случае, если main.py будет запущен, как основная программа. Если попытаться использовать метод run() при импорте main.py в другой модуль Python, он не вызовется.

Важно: сервер разработки Flask используется исключительно для тестирования, поэтому его производительность невысокая.

Режим отладки (Debug)

Тем не менее сам браузер не сообщает о типе ошибки. Если посмотреть в консоль, то можно увидеть отчет об ошибке. В данном случае он выглядит вот так:

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

Чтобы включить режим, нужно передать аргумент debug=True методу run() :

После обновления файл main.py следующим образом его можно запускать.

Теперь при открытии https://127.0.0.1:5000/ на странице будет отладчик.

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

flask python что это такое

При наведении на строчку кода отображается иконка терминала. Нажав на нее, откроется консоль, где можно ввести любой код Python.

flask python что это такое

В ней можно проверить локальные переменные.

flask python что это такое

Если консоль открывается первый раз, то нужно ввести PIN-код.

flask python что это такое

Это мера безопасности, призванная ограничить доступ к консоли неавторизованным пользователям. Посмотреть код можно в консоли при запуске сервера. Он будет указан в начале вывода.

flask python что это такое

Завершить урок стоит созданием еще одного приложения Flask с применением всех имеющихся знаний.

Создаем еще один файл main2.py со следующим кодом:

flask python что это такое

flask python что это такое

Стоит заметить, что путь /user/ / будет работать только с теми URL, где динамическая часть ( user_id ) представлена числом.

flask python что это такое

Как Flask обрабатывает запрос?

Откуда Flask знает, какую функцию выводить, когда он получает запрос от клиента?

Как видно, есть 4 правила. Flask определяет соответствия URL в следующем формате:

Путь /static/ автоматически добавляется для статических файлов Flask. О работе со статическими файлами речь пойдет в отдельном уроке «Обслуживание статических файлов во Flask».

Источник

Быстрый старт¶

Минимальное приложение¶

Минимальное приложение Flask выглядит примерно так:

Проследовав по ссылке http://127.0.0.1:5000/ вы увидите ваше приветствие миру.

Итак, что же делает этот код?

Для остановки сервера, нажмите Ctrl+C.

Публично доступный сервер

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

Если у вас отключена опция debug или вы доверяете пользователям в сети, вы можете сделать сервер публично доступным, просто изменив вызов метода run() таким вот образом:

Это укажет вашей операционной системе, чтобы она слушала сеть со всех публичных IP-адресов.

Режим отладки¶

Метод run() чудесно подходит для запуска локального сервера для разработки, но вы будете должны перезапускать его всякий раз при изменении вашего кода. Это не очень здорово, и Flask здесь может облегчить жизнь. Если вы включаете поддержку отладки, сервер перезагрузит сам себя при изменении кода, кроме того, если что-то пойдёт не так, это обеспечит вас полезным отладчиком.

Существует два способа включить отладку. Или установите флаг в объекте приложения:

Или передайте его как параметр при запуске:

Оба метода вызовут одинаковый эффект.

Несмотря на то, что интерактивный отладчик не работает в многопоточных окружениях (что делает его практически неспособным к использованию на реальных рабочих серверах), тем не менее, он позволяет выполнение произвольного кода. Это делает его главной угрозой безопасности, и поэтому он никогда не должен использоваться на реальных «боевых» серверах.

Снимок экрана с отладчиком в действии:

flask python что это такое

Маршрутизация¶

Современные веб-приложения используют «красивые» URL. Это помогает людям запомнить эти URL, это особенно удобно для приложений, используемых с мобильных устройств с более медленным сетевым соединением. Если пользователь может перейти сразу на желаемую страницу, без предварительного посещения начальной страницы, он с большей вероятностью вернётся на эту страницу и в следующий раз.

Как вы увидели ранее, декоратор route() используется для привязки функции к URL. Вот простейшие примеры:

Но это еще не все! Вы можете сделать определенные части URL динамически меняющимися и задействовать в функции несколько правил.

Правила для переменной части¶

Существуют следующие конвертеры:

Уникальные URL / Перенаправления

Возьмём два правила:

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

Построение (генерация) URL¶

Зачем Вам может потребоваться формировать URL-ы с помощью функции их обращения url_for() вместо того, чтобы жёстко задать их в ваших шаблонах? Для этого есть три веские причины:

Методы HTTP¶

Не имеете понятия, что такое метод HTTP? Не беспокойтесь, здесь приводится быстрое введение в методы HTTP, и почему они важны:

HTTP-метод (также часто называемый командой) сообщает серверу, что хочет сделать клиент с запрашиваемой страницей. Очень распространены Следующие методы:

Статические файлы¶

Чтобы сформировать для статических файлов URL, используйте специальное окончание ‘static’ :

Визуализация шаблонов¶

При работе с шаблонами вы можете использовать всю мощь Jinja2. За дополнительной информацией обратитесь к официальной Документации по шаблонам Jinja2

Вот пример шаблона:

Вот основные возможности по работе с классом Markup :

Доступ к данным запроса¶

Локальные объекты контекста (context locals)¶

Информация от инсайдера

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

Некоторые объекты в Flask являются глобальными, но необычного типа. Эти объекты фактически являются прокси (посредниками) к объектам, локальным для конкретного контекста. Труднопроизносимо. Но на самом деле довольно легко понять.

Объект запроса¶

Объект запроса документирован в секции API, мы не будем рассматривать его здесь подробно (смотри request ). Вот широкий взгляд на некоторые наиболее распространённые операции. Прежде всего, вам необходимо импортировать его из модуля flask :

Загрузка файлов на сервер¶

Cookies¶

Ошибки и перенаправления¶

Чтобы перенаправить пользователя в иную конечную точку, используйте функцию redirect() ; для того, чтобы преждевременно прервать запрос с кодом ошибки, используйте функцию abort() function:

Это довольно бессмысленный пример, потому что пользователь будет перенаправлен с индексной страницы на страницу, на которую у него нет доступа ( 401 означает отказ в доступе), однако он показывает, как это работает.

По умолчанию, для каждого кода ошибки отображается чёрно-белая страница с ошибкой. Если вы хотите видоизменить страницу с ошибкой, то можете использовать декоратор errorhandler() :

Об ответах¶

Представим, что вы имеете подобное представление:

Вам надо всего лишь обернуть возвращаемое выражение функцией make_response() и получить объект ответа для его модификации, а затем вернуть его:

Сессии¶

В случае использования сессий вам необходимо установить значение этого секретного ключа. Вот как работают сессии:

Упомянутая escape() осуществляет для вас обработку специальных последовательностей (escaping), что необходимо, если вы не используете движок шаблонов (как в этом примере).

Как генерировать хорошие секретные ключи

Проблемой случайных значений является то, что трудно сказать, что действительно является является случайным. А секретный ключ должен быть настолько случайным, насколько это возможно. У вашей операционной системы есть способы для генерации достаточно случайных значений на базе криптографического случайного генератора, который может быть использован для получения таких ключей:

Просто возьмите, скопируйте/вставьте это в ваш код, вот и готово.

Замечание о сессиях на базе cookie: Flask возьмёт значения, которые вы помещаете в объект сессии, и сериализует их в cookie. Если вы обнаружили какие-либо значения, которые не сохраняются между запросами, а cookies реально включены, а никаких ясных сообщений об ошибках не было, проверьте размер cookie в ответах вашей страницы и сравните с размером, поддерживаемым веб-браузером.

Message Flashing¶

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

Ведение журналов¶

Добавлено в версии 0.3.

Вот некоторые примеры вызовов функции журналирования:

Как зацепиться (hooking) к промежуточному слою WSGI¶

Если вы хотите добавить в ваше приложение слой промежуточного, или связующего для WSGI программного обеспечения (middleware), вы можете обернуть внутреннее WSGI-приложение. К примеру, если вы хотите использовать одно из middleware из пакета Werkzeug для обхода известных багов в lighttpd, вы можете сделать это подобным образом:

Развёртывание приложения на веб-сервере¶

Готовы к развёртыванию на сервере вашего нового приложения Flask? В завершение краткого руководства, вы можете немедленно развернуть приложение на одной из платформ хостинга, предоставляющих бесплатное размещение для малых проектов:

Другие места, где можно разместить ваше приложение:

Источник

Создание веб-приложения с помощью Flask в Python 3

Published on May 13, 2020

Автор выбрал фонд Free and Open Source Fund для получения пожертвования в рамках программы Write for DOnations.

Введение

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

В рамках этого обучающего руководства вы будете использовать инструментарий Bootstrap, чтобы сделать ваше приложение визуально привлекательным. Bootstrap поможет вам включить в ваше веб-приложение быстрые веб-страницы, чтобы приложение можно было использовать на мобильных браузерах без написания для этого собственных кодов HTML, CSS и JavaScript. Инструментарий дает возможность изучить работу Flask.

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

С помощью этого обучающего руководства вы создадите небольшой веб-блог с использованием Flask и SQLite в Python 3. Пользователи приложения могут видеть все посты в вашей базе данных и нажимать на заголовки постов для просмотра их содержания. Кроме того, присутствует возможность добавлять новый пост в базу данных и редактировать или удалять существующий пост.

Предварительные требования

Перед началом выполнения этого руководства вам потребуется:

Шаг 1 — Установка Flask

Если вы еще не активировали среду программирования, убедитесь, что находитесь в директории проекта ( flask_blog ), и с помощью следующей команды активируйте среду:

Данный префикс служит индикатором того, что среда env активна (имя среды может быть другим, в зависимости от того, как вы назвали ее при создании).

Примечание. Вы можете использовать Git, систему контроля версий, для эффективного управления и отслеживания процесса разработки вашего проекта. О том, как использовать Git, вы можете узнать из нашей статьи Введение в Git: установка, использование и ответвления.

Чтобы установить Flask, запустите следующую команду:

После завершения установки запустите следующую команду, чтобы подтвердить установку:

В результате вы увидите номер версии, который будет выглядеть примерно так:

Вы создали папку проекта, виртуальную среду и установили Flask. Теперь вы готовы переходить к настройке базового приложения.

Шаг 2 — Создание базового приложения

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

В директории flask_blog откройте файл с именем hello.py для редактирования. Используйте nano или любой другой текстовый редактор:

Этот файл hello.py будет служить минимальным примером того, как обрабатывать запросы HTTP. Внутри него импортируйте объект Flask и создайте функцию, которая возвращает ответ HTTP. Напишите следующий код внутри файла hello.py ​​​:

Функция просмотра hello() возвращает строку ‘Hello, World!’ в качестве ответа.

Сохраните и закройте файл.

Для запуска вашего веб-приложения сначала укажите Flask, где искать приложение (в вашем случае файл hello.py ) с помощью переменной среды FLASK_APP :

Затем запустите его в режиме разработки с помощью переменной среды FLASK_ENV :

И наконец, запустите приложение, используя команду flask run :

После запуска приложения вы увидите примерно следующее:

В предыдущем выводе представлена следующая информация:

Откройте браузер и введите URL ​​​​​​ http://127.0.0.1:5000/ ​​​​​​. Вы получите строку Hello, World! в качестве ответа. Это подтверждает то, что ваше приложение успешно работает.

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

Теперь у вас есть небольшое веб-приложение Flask. Вы запустили ваше приложение и вывели информацию в браузере. Далее вы будете использовать файлы HTML в вашем приложении.

Шаг 3 — Использование шаблонов HTML

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

На этом этапе вы создадите свое основное приложение Flask в новом файле.

Функция просмотра index() возвращает результат вызова render_template() с index.html​​ в качестве аргумента. Это дает указание render_template() искать файл с именем index.html в папке шаблонов. И папка, и файл еще отсутствуют. Вы получите сообщение об ошибке, если запустите приложение на этом этапе. Тем не менее при запуске вы уже будете знать об этой часто встречающейся ошибке. Затем вы сможете исправить ошибку, создав необходимые папку и файл.

Сохраните и закройте файл.

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

flask python что это такое

После этого добавьте следующий код HTML внутри index.html ​​:

Сохраните файл и используйте свой браузер для перехода на http://127.0.0.1:5000/ или обновите страницу. Теперь браузер должен отобразить текст Welcome to FlaskBlog в теге

Помимо папки templates веб-приложения Flask также обычно имеют папку static для хостинга статичных файлов, таких как файлы CSS, файлы JavaScript и изображения, которые использует приложение.

После этого откройте файл style.css в директории css для редактирования:

Добавьте следующее правило CSS в файл style.css :

Код CSS добавит границу, изменит цвет на коричневый, выравняет текст по центру и добавит небольшое дополнение к меткам

Сохраните и закройте файл.

Далее откройте файл шаблона index.html для редактирования:

Добавьте ссылку в файл style.css внутри раздела файла шаблона index.html :

Для этого вы используете вспомогательную функцию url_for() ​​​ для генерирования подходящего расположения файла. Первый аргумент указывает, что вы связаны со статичным файлом, а второй — это путь файла внутри статичной директории.

Сохраните и закройте файл.

После обновления страницы индекса вашего приложения вы увидите, что цвет текста Welcome to FlaskBlog ​​​ теперь коричневый, расположен по центру и добавлен внутри границы.

Используйте язык CSS для оформления стиля приложения и придавайте ему более привлекательный вид с помощью своего собственного дизайна. Однако, если вы не веб-дизайнер или не знакомы с CSS, воспользуйтесь инструментарием Bootstrap, который предлагает простые в использовании компоненты для оформления приложения. В данном проекте мы будем использовать Bootstrap.

Для создания базового шаблона сначала необходимо создать файл с именем base.html внутри директории templates :

Введите следующий код в шаблоне base.html ​​:

Сохраните и закройте файл после редактирования.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *