Инфоурок Информатика ПрезентацииПрезентация по информатике на тему "Flask"

Презентация по информатике на тему "Flask"

Скачать материал
Скачать материал "Презентация по информатике на тему "Flask""

Получите профессию

Секретарь-администратор

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Методические разработки к Вашему уроку:

Получите новую специальность за 2 месяца

Специалист по учету энергопотребления

Описание презентации по отдельным слайдам:

  • Канарейкин А. И.

    1 слайд

    Канарейкин А. И.

  • Разработчик: Ронахер, АрминАрмин Ронахер (род. 10 мая 1989, Грац, Австрия) —...

    2 слайд

    Разработчик: Ронахер, Армин
    Армин Ронахер (род. 10 мая 1989, Грац, Австрия) — австрийский разработчик открытого программного обеспечения и создатель веб-фреймворка Flask для Python.

  • Flask — фреймворк для создания веб-приложений на языке программирования Pytho...

    3 слайд

    Flask — фреймворк для создания веб-приложений на языке программирования Python, использующий набор инструментов Werkzeug, а также шаблонизатор Jinja2.
    Flask
    Относится к категории так называемых микрофреймворков — минималистичных каркасов веб-приложений, сознательно предоставляющих лишь самые базовые возможности.
    Поддерживается установка посредством пакетного менеджера PyPI, версия 1.0 совместима с Python 2.7, Python 3.3 и выше.
    Создатель и основной автор — австрийский программист Армин Ронахер, начал работу над проектом в 2010 году.

  • Что значит «микро»?


«Микро» в фреймворке относится не только к простоте и н...

    4 слайд

    Что значит «микро»?


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

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

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

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

  • Установка

Имеются две зависимости:
Jinja2 — движок темплейтов
Werkzeug — н...

    5 слайд

    Установка

    Имеются две зависимости:

    Jinja2 — движок темплейтов

    Werkzeug — набор инструментов WSGI, стандартного интерфейса Python для развертывания веб-приложений и взаимодействия между ними и различными серверами разработки.

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

  • Hello World!from flask import Flask
app = Flask(__name__) 
@app.route("/") 
d...

    6 слайд

    Hello World!
    from flask import Flask
    app = Flask(__name__)
    @app.route("/")
    def hello():
    return "Hello World!"
    if __name__ == "__main__":
    app.run()
    Пример веб-приложения, которое показывает «Hello World!»:

  • Разбор программы Hello world!

Рассмотрим, как работает программа, которую вы...

    7 слайд

    Разбор программы Hello world!

    Рассмотрим, как работает программа, которую вы запустили выше:

    Сначала мы импортируем Flask класс. Экземпляр этого класса будет нашим WSGI приложением. Первым аргументом является имя модуля приложения. Если вы используете один модуль (как в данном примере), вы должны использовать __name__, потому что в зависимости от того, было ли это начато как приложение или как импорт модуля, название будет другим ('__main__' по сравнению с реальным именем импорта).
    Далее мы создаем экземпляр этого класса. Мы передаем ему имя модуля или пакета. Это необходимо, так как Flask не знает, где искать шаблоны, статические файлы, и так далее.
    Затем мы используем route(). Декоратор говорит Flask, что URL должен вызывать нашу функцию.
    Функция задает имя, которое также используется для создания URL-адресов для этой функции, и возвращает сообщение, что мы хотим отобразить в браузере пользователя.
    Наконец, мы используем run() функцию для запуска локального сервера с нашим приложением. Условие __name__ == «__main__» означает, что сервер работает только в том случае, если скрипт выполняется непосредственно из Python интерпретатора и не используется в качестве импортированного модуля.

  • Общедоступный сервер

Если вы запустите сервер, вы заметите, что он доступен...

    8 слайд

    Общедоступный сервер

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

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

    app.run(host='0.0.0.0')

    Это говорит вашей операционной системе слушать на всех ip (интерфейсах).

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

Метод run() хорош для начала разработки на локальном сервере....

    9 слайд

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

    Метод run() хорош для начала разработки на локальном сервере. Но это потребует ручного перезапуска сервера после каждого изменения в коде. Хорошо что Flask может справиться с этой проблемой. Если включить Debug Mode, сервер будет сам перегружаться после каждого изменения в коде. Еще вы получите полезный отладчик, на тот случай если что-то пойдет не так.
    Есть два способа включить режим отладки:
    app.debug = True
    app.run()
    Или
    app.run(debug=True)
    Оба метода дадут одинаковый эффект

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

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

Современные веб-приложения имеют красивые URL. Это помогает лю...

    10 слайд

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

    Современные веб-приложения имеют красивые URL. Это помогает людям помнить их, особенно это удобно для приложений, которые используются в мобильных устройствах с медленным сетевым подключением. Если пользователь может попасть на страницу через URL минуя главную страницу, то более вероятно, что он вернется в следующий раз.
    Как вы видели выше, декоратор route() используется для связывания функций с URL. Вот несколько основных примеров:

    @app.route('/')
    def index():
    return 'Index Page'

    @app.route('/hello')
    def hello():
    return 'Hello World'


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

  • Использование переменных

Для добавления переменной части в URL вы можете пом...

    11 слайд

    Использование переменных

    Для добавления переменной части в URL вы можете пометить эти разделы, как <variable_name>. Такая часть затем передается как аргумент ключевого слова в вашу функцию. Дополнительно преобразователь может быть определен путем указания правила <converter:variable_name>. Вот некоторые хорошие примеры:

    @app.route('/user/<username>')
    def show_user_profile(username):
    # show the user profile for that user
    return 'User %s' % username

    @app.route('/post/<int:post_id>')
    def show_post(post_id):
    # show the post with the given id, the id is an integer
    return 'Post %d' % post_id
    Имеются следующие конверторы

    intПринимает целые числа
    floatто же самое, что int, только с плавающей точкой
    pathпохоже на то, что установлено по умолчанию, но принимает слэши

  • Уникальные линки и редирект

Линки во Flask основаны на базе модуля маршрутиз...

    12 слайд

    Уникальные линки и редирект

    Линки во Flask основаны на базе модуля маршрутизации от Werkzeug. Идея этого модуля заключается в обеспечении красивых и уникальных URL-адресов на основе правил ранее сформировавшихся в Apache и в HTTP серверах.
    Используйте два правила:

    @app.route('/projects/')
    def projects():
    return 'The project page'

    @app.route('/about')
    def about():
    return 'The about page'
    Хоть эти примеры и выглядят очень похоже, они различаются по слэшу в конце URL. В первом случае, доступ без слэша вызывает редирект на канонические URL с обратным слэшем.
    Во втором случае, без обратного слэша, URL определяется, как путь к файлу на UNIX-подобных системах. Доступ к URL со слэшем будет перенаправляться на ошибку 404 «не найдено».
    Такое поведение позволяет пользователям получить доступ к странице, даже если они забыли ввести в конце обратный слэш. Кроме того, URL-адрес будет оставаться уникальным, и это поможет поисковым системам избегать повторного индексирования страницы.

  • Генерация URL

Flask может генерировать URL. Для создания URL, используйте фу...

    13 слайд

    Генерация URL

    Flask может генерировать URL. Для создания URL, используйте функцию url_for(). Она принимает имя функции в качестве первого аргумента, а также ряд ключевых аргументов, каждый из которых соответствует переменной части URL правила. Части неизвестной переменной добавляется к URL в качестве параметров запроса. Вот несколько примеров:

    >>> from flask import Flask, url_for
    >>> app = Flask(__name__)
    >>> @app.route('/')
    ... def index(): pass
    ...
    >>> @app.route('/login')
    ... def login(): pass
    ...
    >>> @app.route('/user/<username>')
    ... def profile(username): pass
    ...
    >>> with app.test_request_context():
    ... print(url_for('index'))
    ... print(url_for('login'))
    ... print(url_for('login', next='/'))
    ... print(url_for('profile', username='John Doe'))
    ...
    /
    /login
    /login?next=/
    /user/John%20Doe
    Здесь также используется метод test_request_context(), который объяснен ниже. Он говорит Flask, как нужно обрабатывать запрос, даже если мы взаимодействуем через шел Python. Почему мы используем построение URL вместо их жесткого задания в шаблонах? На то есть три хорошие причины:

    Реверсирование, зачастую является более описательным методом и позволяет изменять URL на одном дыхании.
    Автоматическое экранирование специальных символов, уникода. Вам даже не придется задумываться над этим.
    Если ваше приложение находится вне корневой URL (например, /myapplication вместо /), функция url_for () будет это правильно обрабатывать для вас.

Получите профессию

Копирайтер

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Краткое описание документа:

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

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

Поддерживается установка посредством пакетного менеджера PyPI, версия 1.0 совместима с Python 2.7, Python 3.3 и выше.

Создатель и основной автор — австрийский программист Армин Ронахер, начал работу над проектом в 2010 году.



Скачать материал

Найдите материал к любому уроку, указав свой предмет (категорию), класс, учебник и тему:

6 665 123 материала в базе

Скачать материал

Другие материалы

Вам будут интересны эти курсы:

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

Авторизуйтесь, чтобы задавать вопросы.

  • Скачать материал
    • 27.04.2020 1069
    • PPTX 205.9 кбайт
    • 36 скачиваний
    • Оцените материал:
  • Настоящий материал опубликован пользователем Канарейкин Александр Иванович. Инфоурок является информационным посредником и предоставляет пользователям возможность размещать на сайте методические материалы. Всю ответственность за опубликованные материалы, содержащиеся в них сведения, а также за соблюдение авторских прав несут пользователи, загрузившие материал на сайт

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

    Удалить материал
  • Автор материала

    Канарейкин Александр Иванович
    Канарейкин Александр Иванович
    • На сайте: 5 лет
    • Подписчики: 0
    • Всего просмотров: 450476
    • Всего материалов: 150

Ваша скидка на курсы

40%
Скидка для нового слушателя. Войдите на сайт, чтобы применить скидку к любому курсу
Курсы со скидкой

Курс профессиональной переподготовки

Секретарь-администратор

Секретарь-администратор (делопроизводитель)

500/1000 ч.

Подать заявку О курсе

Курс профессиональной переподготовки

Математика и информатика: теория и методика преподавания в профессиональном образовании

Преподаватель математики и информатики

500/1000 ч.

от 8900 руб. от 4150 руб.
Подать заявку О курсе
  • Сейчас обучается 41 человек из 23 регионов
  • Этот курс уже прошли 53 человека

Курс профессиональной переподготовки

Создание и обеспечение электронного архива с использованием информационно-коммуникационных технологий

Специалист по формированию электронного архива

600 ч.

9840 руб. 5600 руб.
Подать заявку О курсе
  • Сейчас обучается 30 человек из 22 регионов
  • Этот курс уже прошли 36 человек

Курс повышения квалификации

Применение компьютерных моделей при обучении математике и информатике в рамках ФГОС ООО

72 ч. — 180 ч.

от 2200 руб. от 1100 руб.
Подать заявку О курсе
  • Сейчас обучается 48 человек из 27 регионов
  • Этот курс уже прошли 179 человек

Мини-курс

Технологии в онлайн-обучении

3 ч.

780 руб. 390 руб.
Подать заявку О курсе
  • Сейчас обучается 26 человек из 17 регионов

Мини-курс

Стратегии B2B маркетинга: от анализа до продаж

6 ч.

780 руб. 390 руб.
Подать заявку О курсе

Мини-курс

Финансовый анализ

5 ч.

780 руб. 390 руб.
Подать заявку О курсе
  • Сейчас обучается 20 человек из 12 регионов