- PVSM.RU - https://www.pvsm.ru -
Часть 1 [1] — предисловие и содержание.
Pyramid превосходен в построении веб-приложений несколькими способами. Также как и Pylons, до его появления, Pyramid может строить традиционные маршрут-ориентированные(routes-oriented) RDBMS [2] приложения, используя SQLAlchemy. В отличии от других, основанных на RDBMS, веб-фреймворков, Pyramid к тому же очень хорошо оснащен, чтобы легко строить контент-ориентированные приложения, знакомые из мира Plone и Zope.
Поскольку это пособие для Plone конференции, мы выбрали сценарий представления, который показывает сильные стороны Pyramid в контент-ориентированных приложениях. Если точнее — иерархическая система управления проектами, где вы можете ставить задачи командам.
По ходу изучения этого пособия, мы будем создавать приложение под названием Projector.
В этом пособии предполагается, что у вас уже установлен Python 2.6 и выше, у вас есть соединение с интернетом, и текстовый редактор по вашим предпочтениям. Этого достаточно, чтобы вы начали с первого шага. Другие шаги могут потребовать установки дополнительных пакетов.
Наше рабочее пространство будет выглядеть таким образом:
someworkingdirectory/
tutorial_workspace/
venv ### Target for our virtualenv
creatingux/
step01
step02
etc.
resources
step01
step02
etc.
etc.
Открываем shell и заходим в нем в рабочую директорию
должно вывести что-то вроде:
/home/ks/projects/tutorial_workspace/venv/bin/easy_install
Каждый шаг в этом руководстве требует от читателя ввода примеров кода и создания таким образом рабочего приложения. Директории в этих шагах не являются Python-пакетами, но как бы там ни было, простая директория полна Python-модулей. К тому же они, полностью работающие, в отдельных примерах планомерно вырастают в целое приложение.
Файлы примера доступны для тех, кто не хочет вводить код, как часть учебного процесса.(прим.перев.на той странице [3] их нет)
В этой серии шагов мы построим сущность пользовательского опыта(UX), с заменителями [4] для логики и данных.
У многих проектов есть неизменный рабочий поток, который начинается с клиента, кто обычно хочет увидеть что-то, чтобы понять и утвердить. Обычно «UI персона» в команде работает на данном этапе, получая рабочий прототип на месте, и тогда логика считается заполненной.
Это пособие моделирует такой рабочий процесс. В этой первой части мы покажем, как человек, без глубоких знаний Pyramid архитектуры, может создавать работающие прототипы различных видов, в Projector'е.
Какой простейший путь начать в Pyramid? Отдельный-файл модуль. Без пакетов, импортов, setup.py и другого подобного.
Микрофреймворки это всеобщее увлечение этих дней. Они дают низкую загрузку при выполнении. И также они не грузят
Pyramid особенный потому что он может действовать как отдельный файл-микрофреймворк. У вас есть простой Python файл который может быть исполнен напрямую через Python. Но Pyramid также масштабируется до громадных приложений.
Убедитесь, что вы сделали все, как сказано здесь [6].
И поехали дальше:
$ mkdir creatingux; cd creatingux
$ mkdir step01; cd step01
Копируем текст ниже во вновь создаваемый файл step01/application.py:
from wsgiref.simple_server import make_server
from pyramid.config import Configurator
from pyramid.response import Response# This acts as the view function
def hello_world(request):
return Response('hello!')def main():
# Grab the config, add a view, and make a WSGI app
config = Configurator()
config.add_view(hello_world)
app = config.make_wsgi_app()
return appif __name__ == '__main__':
# When run from command line, launch a WSGI server and app
app = main()
server = make_server('0.0.0.0', 8080, app)
server.serve_forever()
$ python application.py
Открываем 127.0.0.1:8080
в браузере, смотрим, радуемся.
Этот простой модуль делает совсем немного, для нескольких строк кода, таким образом создание веб-приложения по духу схоже с микрофреймворками. Функция представления добавлена к конфигурации. При вызове, представление возвращает ответ.
Предпосылки к мегафреймворкам, микрофреймворкам и Pyramid основаны на этом.
Часть 3: [7]
Автор: ks_ks
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/python/18048
Ссылки в тексте:
[1] Часть 1: http://habrahabr.ru/blogs/python/135916/
[2] RDBMS: http://ru.wikipedia.org/wiki/%D0%A0%D0%A1%D0%A3%D0%91%D0%94
[3] той странице: http://docs.pylonsproject.org/projects/pyramid_tutorials/en/latest/humans/setup.html
[4] заменителями: http://ru.wikipedia.org/wiki/Proxy_(%D1%88%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD_%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F)
[5] мозг: http://www.braintools.ru
[6] здесь: http://habrahabr.ru/blogs/python/136222/#install
[7] Часть 3: : http://habrahabr.ru/blogs/python/136245/
Нажмите здесь для печати.