web2py определяется как бесплатная веб-инфраструктура с открытым исходным кодом для гибкой разработки, которая включает веб-приложения на основе баз данных; он написан на Python и программируется на Python. Это фреймворк с полным стеком; он состоит из всех необходимых компонентов, разработчик должен создать полнофункциональное веб-приложение.
Фреймворк web2py следует шаблону Model-View-Controller запуска веб-приложений в отличие от традиционных шаблонов.
-
Модель является частью приложения, которая включает логику для данных. Объекты в модели используются для извлечения и хранения данных из базы данных.
-
Представление является частью приложения, которое помогает отображать данные для конечных пользователей. Отображение данных выбирается из модели.
-
Контроллер является частью приложения, которое обрабатывает взаимодействие с пользователем. Контроллеры могут считывать данные из представления, управлять пользовательским вводом и отправлять входные данные в конкретную модель.
Модель является частью приложения, которая включает логику для данных. Объекты в модели используются для извлечения и хранения данных из базы данных.
Представление является частью приложения, которое помогает отображать данные для конечных пользователей. Отображение данных выбирается из модели.
Контроллер является частью приложения, которое обрабатывает взаимодействие с пользователем. Контроллеры могут считывать данные из представления, управлять пользовательским вводом и отправлять входные данные в конкретную модель.
-
У web2py есть встроенная функция для управления файлами cookie и сессиями. После совершения транзакции (в терминах SQL) сеанс также сохраняется одновременно.
-
web2py способен запускать задачи в запланированные интервалы после выполнения определенных действий. Это может быть достигнуто с CRON .
У web2py есть встроенная функция для управления файлами cookie и сессиями. После совершения транзакции (в терминах SQL) сеанс также сохраняется одновременно.
web2py способен запускать задачи в запланированные интервалы после выполнения определенных действий. Это может быть достигнуто с CRON .
web2py — рабочий процесс
Посмотрите на диаграмму рабочего процесса, приведенную ниже.
Диаграмма рабочего процесса описана ниже.
-
Компоненты 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, и может прозрачно скомпилировать исходный код, написанный разработчиками.