Что такое скрипт вставки? - PullRequest
21 голосов
/ 26 ноября 2009

Я пытаюсь понять, что такое скрипт вставки и paster. Сайт далеко не ясен. Я использовал Paster для создания готовых макетов для проектов, но я не понимаю общую картину.

Насколько я понимаю, и из записи в википедии говорится, что это фреймворк для веб-фреймворков, но это кажется редуцирующим. paster create, кажется, может создавать готовые макеты для пакетов с поддержкой setuptools / distutils.

Какую проблему (или набор проблем) она пытается решить?

Ответы [ 2 ]

14 голосов
/ 26 ноября 2009

Вставить получил несколько компонентов:

  • Вставить ядро: различные модули для помощи в создании веб-приложений или сред wsgi ( индекс модуля ). Включает в себя такие вещи, как объекты запроса и ответа. С веб-сайта: «Будущее этих частей - разделить их на независимые пакеты и реорганизовать внутренние зависимости Paste, чтобы вместо этого полагаться на WebOb». Если вы планируете использовать компоненты из ядра вставки, я предлагаю вам взглянуть на побочные эффекты, например WebOb .
  • Paste Deploy: система для загрузки и настройки приложений и серверов WSGI ( индекс модуля ). В основном некоторые вещи для чтения файла конфигурации и создания приложения WSGI, как указано в файле.
  • Вставить скрипт : платформа для определения команд. Он поставляется с несколькими командами, такими как paster serve (загружает и обслуживает приложение WSGI, определенное в файле конфигурации Paste Deploy) и paster create (создает макет каталога для пакетов и т. Д.). Лучшее вступление для вставки скрипта, которое я нашел, это http://pythonpaste.org/script/developer.html

Вот источник команды paster serve: serve.py .

И paster create: create_distro.py .

4 голосов
/ 26 ноября 2009

PasteScript (и его дополнительный компонент PasteDeploy) - это инструменты для запуска кода Python с использованием «точек входа». По сути, библиотека python может указывать в метаданных, что она знает, как создать определенный тип проекта Python или выполнить определенные операции над этими проектами. Paster - инструмент командной строки, который ищет соответствующий код для запрошенной вами операции. Это очень общая проблема; если вы вообще знакомы с Ruby, эквивалентом может быть 'rake'.

В частности, PasteDeploy - это формат конфигурации для обслуживания веб-приложений Python с использованием paster. И PasteScript, и PasteDeploy важны для веб-фреймворка Pylons.

...