Начало работы с веб - фреймворком Flask

FlaskFlaskBeginner
Практиковаться сейчас

This tutorial is from open-source community. Access the source code

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

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

Примечание: вам нужно создать файл с кодом самостоятельно и запускать его в среде. Вы можете предварительно просмотреть статус сервиса Flask на Web 5000.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL flask(("Flask")) -.-> flask/DataHandlingGroup(["Data Handling"]) flask(("Flask")) -.-> flask/CoreConceptsGroup(["Core Concepts"]) flask(("Flask")) -.-> flask/DevelopmentToolsGroup(["Development Tools"]) flask/DataHandlingGroup -.-> flask/incoming_request_data("Incoming Request Data") flask/DataHandlingGroup -.-> flask/response_objects("Response Objects") flask/CoreConceptsGroup -.-> flask/application_object("Application Object") flask/CoreConceptsGroup -.-> flask/sessions("Sessions") flask/CoreConceptsGroup -.-> flask/useful_internals("Useful Internals") flask/DevelopmentToolsGroup -.-> flask/blueprint_objects("Blueprint Objects") subgraph Lab Skills flask/incoming_request_data -.-> lab-136334{{"Начало работы с веб - фреймворком Flask"}} flask/response_objects -.-> lab-136334{{"Начало работы с веб - фреймворком Flask"}} flask/application_object -.-> lab-136334{{"Начало работы с веб - фреймворком Flask"}} flask/sessions -.-> lab-136334{{"Начало работы с веб - фреймворком Flask"}} flask/useful_internals -.-> lab-136334{{"Начало работы с веб - фреймворком Flask"}} flask/blueprint_objects -.-> lab-136334{{"Начало работы с веб - фреймворком Flask"}} end

Настройка Flask

Для начала работы с Flask вам нужно установить его и настроить новый проект. Следуйте инструкциям ниже:

  1. Установите Flask, выполнив следующую команду в терминале или командной строке:

    pip install flask
  2. Откройте новый файл и сохраните его под именем app.py.

    cd ~/project
    touch app.py
  3. Импортируйте модуль Flask и создайте экземпляр класса Flask:

    from flask import Flask
    
    app = Flask(__name__)

Создание базового маршрута

Маршруты в Flask определяют шаблоны URL - адресов для вашего приложения. Создадим базовый маршрут, который будет отображать сообщение "Hello, World!".

  1. Добавьте следующий код в файл app.py:

    @app.route("/")
    def hello_world():
        return "Hello, World!"
  2. Сохраните файл.

Запуск приложения

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

  1. В терминале или командной строке перейдите в директорию, где находится файл app.py.

  2. Запустите следующую команду, чтобы запустить сервер разработки Flask:

    flask run --host=0.0.0.0

--host=0.0.0.0 используется для того, чтобы сделать приложение доступным для公众. Если вы не укажете это, приложение будет доступно только на вашем локальном компьютере.

Затем переключитесь на вкладку Web 5000 и обновите страницу.

Добавление HTML - шаблонов

Flask использует шаблоны Jinja2 для генерации HTML - содержимого. Создадим файл с шаблоном и выведем его в нашем маршруте.

  1. Создайте новую директорию в своем проекте под названием templates.

  2. Внутри директории templates создайте новый файл под названием index.html.

  3. Откройте файл index.html и добавьте следующий HTML - код:

    <!doctype html>
    <html>
      <head>
        <title>Flask Quickstart</title>
      </head>
      <body>
        <h1>Hello, Flask!</h1>
      </body>
    </html>
  4. Измените файл app.py, чтобы вывести шаблон index.html:

    from flask import render_template
    
    @app.route("/")
    def hello_world():
        return render_template("index.html")

Запуск приложения снова

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

  1. Остановите сервер разработки Flask, если он по-прежнему работает (нажмите Ctrl + C).

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

    flask run --host=0.0.0.0

Теперь вы должны увидеть сообщение "Hello, Flask!" отображенное в HTML - шаблоне.

Hello, Flask!

Добавление динамического содержания

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

  1. Измените файл app.py, чтобы принимать параметр имени в маршруте:

    @app.route("/<name>")
    def hello(name):
        return render_template("index.html", name=name)
  2. Откройте файл index.html и измените тег <h1>, чтобы отобразить персонализированное приветствие:

    <h1>Hello, {{ name }}!</h1>

Запуск приложения снова

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

  1. Остановите сервер разработки Flask, если он по-прежнему работает (нажмите Ctrl + C).

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

    flask run --host=0.0.0.0
  3. Скопируйте URL вкладки Web 5000 и вставьте его в новую вкладку в вашем браузере.

Copying Web 5000 URL
  1. Добавьте /LabEx в конец URL и нажмите Enter.
Hello LabEx webpage
  1. Измените значение параметра name в URL и нажмите Enter.

Резюме

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