TurboGears - Обзор
Что такое веб-платформа?
Web Application Framework или просто Web Framework представляет собой набор библиотек и модулей, который позволяет разработчику веб-приложений писать приложения, не беспокоясь о деталях низкого уровня, таких как протоколы, управление потоками и т. Д.

Что такое TurboGears?
TurboGears - это среда веб-приложений, написанная на Python. Первоначально созданная Кевином Дангуром в 2005 году, последняя версия TurboGears (версия 2.3.7) управляется группой разработчиков во главе с Марком Раммом и Флораном Эйдом.
TurboGears следует парадигме модель-представление-контроллер, как и большинство современных веб-фреймворков, таких как Rails, Django, Struts и т. Д.
Контроллер представления модели
MVC - это шаблон программного обеспечения для разработки веб-приложений. Шаблон Model View Controller состоит из трех частей:
Model - Самый нижний уровень шаблона отвечает за поддержание данных.
View - Он отвечает за отображение всех или части данных для пользователя.
Controller - Программный код, который контролирует взаимодействие между моделью и представлением.
MVC популярен, поскольку он изолирует логику приложения от уровня пользовательского интерфейса и поддерживает разделение задач. Здесь контроллер получает все запросы для приложения, а затем работает с моделью для подготовки любых данных, необходимых для представления. Затем представление использует данные, подготовленные контроллером, для генерации окончательного презентабельного ответа. Абстракция MVC может быть графически представлена следующим образом:

Модель
Модель отвечает за управление данными приложения. Он отвечает на запрос из представления, а также отвечает на инструкции контроллера по обновлению.
Вид
Представление данных в определенном формате, вызванное решением контроллера представить данные. Это системы шаблонов на основе сценариев, которые очень легко интегрировать с технологией AJAX.
Контроллер
Контроллер отвечает за реакцию на ввод данных пользователем и взаимодействие с объектами модели данных. Контроллер получает входные данные, он проверяет их, а затем выполняет бизнес-операцию, которая изменяет состояние модели данных.
TurboGears построен на основе ряда библиотек и инструментов. Эти инструменты менялись между разными версиями TurboGears. Компоненты текущей версии (2.3.7) перечислены ниже.
SQLAlchemy
Это набор SQL с открытым исходным кодом, который обеспечивает сопоставление объектных отношений (ORM) для кода Python.

Генши
Этот шаблонизатор используется для создания внешнего интерфейса приложений TG. Система веб-шаблонов объединяет шаблон с определенным источником данных для отображения динамических веб-страниц.
ToscaWidgets
Это библиотека виджетов для создания HTML-форм с элементами управления на стороне сервера. Tosca также действует как промежуточное ПО для связи с виджетами и инструментами JavaScript.
Коробка передач
Он предоставляет набор команд для управления проектами и серверными приложениями TurboGears. Приложения TurboGears можно развернуть на любом веб-сервере, совместимом с WSGI.
Интерфейс шлюза веб-сервера (WSGI) был принят в качестве стандарта для разработки веб-приложений Python. WSGI - это спецификация универсального интерфейса между веб-сервером и веб-приложениями. Пакет wsgiref - это эталонная реализация WSGI. Он используется для добавления поддержки WSGI в веб-платформу Web TurboGears. Модуль simple_server в этом пакете реализует простой HTTP-сервер, обслуживающий приложения WSGI. Мы будем использовать его для тестирования приложений, разработанных в этом руководстве.