Учебники

Web2py — Введение

web2py определяется как бесплатная веб-инфраструктура с открытым исходным кодом для гибкой разработки, которая включает веб-приложения на основе баз данных; он написан на Python и программируется на Python. Это фреймворк с полным стеком; он состоит из всех необходимых компонентов, разработчик должен создать полнофункциональное веб-приложение.

Фреймворк web2py следует шаблону Model-View-Controller запуска веб-приложений в отличие от традиционных шаблонов.

  • Модель является частью приложения, которая включает логику для данных. Объекты в модели используются для извлечения и хранения данных из базы данных.

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

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

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

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

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

Web2py Appliance

  • У web2py есть встроенная функция для управления файлами cookie и сессиями. После совершения транзакции (в терминах SQL) сеанс также сохраняется одновременно.

  • web2py способен запускать задачи в запланированные интервалы после выполнения определенных действий. Это может быть достигнуто с CRON .

У web2py есть встроенная функция для управления файлами cookie и сессиями. После совершения транзакции (в терминах SQL) сеанс также сохраняется одновременно.

web2py способен запускать задачи в запланированные интервалы после выполнения определенных действий. Это может быть достигнуто с CRON .

web2py — рабочий процесс

Посмотрите на диаграмму рабочего процесса, приведенную ниже.

Workflow

Диаграмма рабочего процесса описана ниже.

  • Компоненты Models , Views и Controller составляют пользовательское приложение web2py.

  • Несколько приложений могут быть размещены в одном и том же экземпляре web2py.

  • Браузер отправляет HTTP-запрос на сервер, и сервер взаимодействует с Model , Controller и View, чтобы получить необходимые выходные данные.

  • Стрелки представляют связь с ядром (ями) базы данных. Запросы к базе данных могут быть написаны на необработанном SQL или с использованием уровня абстракции базы данных web2py (который будет обсуждаться в следующих главах), так что код приложения web2py не зависит от какого-либо механизма базы данных.

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

  • Диспетчер отображает запрошенный URL-адрес, указанный в ответе HTTP, на вызов функции в контроллере. Выходные данные функции могут быть строкой или хеш-таблицей.

  • Данные отображаются с помощью View . Если пользователь запрашивает страницу HTML (по умолчанию), данные отображаются на странице HTML. Если пользователь запрашивает ту же страницу в XML, web2py пытается найти представление, которое может отобразить словарь в XML.

  • Поддерживаемые протоколы web2py включают HTML, XML, JSON, RSS, CSV и RTF.

Компоненты Models , Views и Controller составляют пользовательское приложение web2py.

Несколько приложений могут быть размещены в одном и том же экземпляре web2py.

Браузер отправляет HTTP-запрос на сервер, и сервер взаимодействует с Model , Controller и View, чтобы получить необходимые выходные данные.

Стрелки представляют связь с ядром (ями) базы данных. Запросы к базе данных могут быть написаны на необработанном SQL или с использованием уровня абстракции базы данных web2py (который будет обсуждаться в следующих главах), так что код приложения web2py не зависит от какого-либо механизма базы данных.

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

Диспетчер отображает запрошенный URL-адрес, указанный в ответе HTTP, на вызов функции в контроллере. Выходные данные функции могут быть строкой или хеш-таблицей.

Данные отображаются с помощью View . Если пользователь запрашивает страницу HTML (по умолчанию), данные отображаются на странице HTML. Если пользователь запрашивает ту же страницу в XML, web2py пытается найти представление, которое может отобразить словарь в XML.

Поддерживаемые протоколы web2py включают HTML, XML, JSON, RSS, CSV и RTF.

Model-View-Controller

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

модель

"db.py" is the model:
db = DAL('sqlite://storage.sqlite')
db.define_table(employee, Field('name'), Field(‘phone’))

Модель включает логику данных приложения. Он подключается к базе данных, как указано на рисунке выше. Предположим, что SQLite используется и хранится в файле storage.sqlite с таблицей, определенной как employee. Если таблица не существует, web2py помогает, создавая соответствующую таблицу.

контроллер

Программа «default.py» является Контроллером .

def employees():
   grid = SQLFORM.grid(db.contact, user_signature = False)
   return locals()

В web2py сопоставление URL-адресов помогает получить доступ к функциям и модулям. В приведенном выше примере контроллер содержит одну функцию (или «действие»), называемую сотрудники.

Действие, выполняемое контроллером, возвращает строку или словарь Python, который представляет собой комбинацию ключа и значения, включая локальный набор переменных.

Посмотреть

«default / contacts.html» — это вид .

{{extend 'layout.html'}}
<h1>Manage My Employees</h1>
{{=grid}}

Для данного примера View отображает выходные данные после выполнения связанной функции контроллера.

Цель этого представления — визуализировать переменные в словаре в формате HTML. Файл View написан на HTML, но он встраивает код Python с помощью разделителей {{и}} .

Код, встроенный в HTML, состоит из кода Python в словаре.

Начните с web2py

web2py поставляется в бинарных пакетах для всех основных операционных систем, таких как Windows, UNIX и Mac OS X.

Это легко установить web2py, потому что —

Он состоит из интерпретатора Python, поэтому вам не нужно предварительно его устанавливать. Существует также версия исходного кода, которая работает во всех операционных системах.

Следующая ссылка содержит бинарные пакеты web2py для загрузки в соответствии с потребностями пользователя — www.web2py.com

Фреймворк web2py не требует предварительной установки в отличие от других фреймворков. Пользователь должен загрузить ZIP-файл и распаковать его в соответствии с требованиями операционной системы.

Фреймворк web2py написан на Python, который является полным динамическим языком, который не требует компиляции или сложной установки для запуска.

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