Flask, Mega-Учебник, Часть 1: Hello, World

Это первая статья из серии в которой я буду документировать опыт написание web-приложений на Python используя микро-фреймоворк Flask.

«Hello, World»

Первое что нам понадобится это структура каталогов и ide. В моих примерах разработка идет в среде Visual Studio с пакетом Python Tools.

  • Application
  •         app
  •                tmp
  •                static
  •                templates

Каталог App– в нем и будет храниться наше приложение. В папке static – файлы изображений, таблицы стилей, javascript. Templates – html шаблоны.

Итак приступим. Создадим наш первый файл (app/__init__.py):

from flask import Flask
app = Flask(__name__)
from app import views

Этот скрипт создает объект класса (flask) и импортирует модуль views, который приведен ниже.

Views – отвечает за обработку запросов веб-браузеров. Каждая функция вида написана для обработки одного или нескольких запросов УРЛа.

Файл(app/views.py)

from app import app
@app.route('/')
@app.route('/index')
def index():
    return"Hello, World!"

Данное представление выглядит довольно таки просто, оно только возвращает строку, для отображения в браузере. Два декоратора route отвечают за обработку отображения URL-а, (/) и (/index) для данной функции.

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

from app import app

if __name__ == '__main__':
    import os

    host = os.environ.get('SERVER_HOST', 'localhost')
    try:
        port = int(os.environ.get('SERVER_PORT', '5555'))
    exceptValueError:
        port = 5555
    app.run(host, port)

Скрипт  также как и в первом файле создает объект но уже не Flask, а нашего приложения.

Помечаем файл run.py как основной. (Правой кнопкой по фалу, Set vas starup file), после этого запускаем компиляцию в любом удобном браузере и проверяем.

Все довольно таки просто. Если у вас что то не получается пишите в комментариях, будем разбирать.  🙂

Что дальше:

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

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

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

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.