Различия между webapp и web.py - PullRequest
       36

Различия между webapp и web.py

10 голосов
/ 21 января 2011

Webpy.org - Кто использует web.py?

"[web.py вдохновило] веб-фреймворк, который мы используем в FriendFeed [и] фреймворк webapp, который поставляетсяс App Engine ... "
- Бретт Тейлор, соучредитель FriendFeed и оригинальный технический руководитель Google App Engine

Google App Engine Начинаем работать с Python

HTML, встроенный в код, является грязным и сложным в обслуживании.Лучше использовать систему шаблонов ... ... Для вашего удобства модуль веб-приложения включает шаблонизатор Django

Вопросы:
В чем различия между веб-приложениеми webpy?
Стоит ли связывать webpy, когда Appengine уже предлагает webapp?

Что я знаю:
1. У Web.py есть собственный язык шаблонов (он выглядит проще, чем у Django)
2. В настоящее время единственная причина, по которойЯ думаю об использовании web.py, чтобы не использовать (и не учиться) Django для создания шаблонов на appengine.
3. Цитаты в начале этого вопроса
4. Я был *От 1032 * до связанных вопросов и через документацию веб-приложения в Google.
5. Я заметил, что stackprinter использует web.py и размещается на appengine.

Ответы [ 3 ]

18 голосов
/ 21 января 2011

опыт web.py :
Я начал использовать web.py три года назад, когда решил изучить некоторые веб-фреймворки Python .
Первое, что мне понравилось в web.py, это его простота; Я искал основную микрорамку без батарей, которые можно найти в других крупных проектах, таких как, например, Django или Web2py .

Итак, я разработал несколько проектов (развернутых с fastcgi ) и изучил все возможности библиотеки web.py , включенные в , Templetor .

Затем я обнаружил Google App Engine и начал использовать Webapp; это был скучный процесс, потому что вместо использования Python (например, Templetor или Mako) он заставляет вас изучать новый синтаксис шаблонов, который по умолчанию очень ограничен.
При разработке StackPrinter я обнаружил, что Google App Engine поддерживается web.py , поэтому я удалил Sqlite , сделал некоторые незначительные изменения и начал использовать хранилище данных GAE.

Web.py был моей первой любовью в терминах веб-фреймворков Python, и справедливо сказать, что я немного пристрастен, чтобы говорить об этом.
Я придерживаюсь web.py для моего любимого проекта на GAE, потому что я бегло с ним и Templetor молниеносно .
Мне нравится тот факт, что я могу использовать Python для создания шаблонов, и простой способ обмениваться некоторыми данными или функциями глобально с представлениями, мне также нравится богатый набор инструментов утилит для кодирования, разметки и т. Д.

Webapp vs web.py :
Я думаю, что сравнивать их несправедливо, потому что Webapp - это простая структура, которая просто предоставляет минимум простых инструментов для начала работы; отсутствуют многие функции, такие как I18n, проверка, процессоры или даже базовая обработка файлов cookie.
Проверьте Webapp-улучшено на что-то лучше.

Моя рекомендация :
Если вы сосредоточены в основном на разработке для Google App Engine, я бы порекомендовал вам использовать некоторые фреймворки, созданные специально для GAE, такие как Tipfy .
. Если вы ищете питонский веб-фреймворк для игры на сторонних проектах, то web.py - хороший проект для обучения и для .

3 голосов
/ 21 января 2011

Различия между webapp и web.py

Основные различия (ИМХО) заключаются в том, что:

  1. Фреймворк webapp был разработан специально для Google App Engine (GAE). Платформа web.py не была разработана специально для GAE.
    • «Веб-приложение Framework является набором инструментов по умолчанию для создания веб-приложений [в Google App Engine], но не единственным». (Источник: Разработка с помощью Google App Engine от Евгения Чурана)
  2. Они используют разные языки шаблонов - web.py использует свой собственный, тогда как язык шаблонов веб-приложения основан на Django.

Другие платформы Python для GAE

Другие платформы Python для GAE, ни один из которых не использует язык шаблонов Django, включают:

  1. Flask - «Микрофрейм для Python, основанный на Werkzeug, Jinja 2 и благих намерениях».
  2. tipfy - "Небольшой, но мощный фреймворк, созданный специально для Google App Engine. Он во многом похож на webapp, но предлагает множество функций и полезностей, которые пропускает webapp: i18n, сессии, собственная аутентификация, флэш-сообщения и многое другое. Все в модульном, облегченном виде, настроенном для App Engine. "

Стоит ли связывать webpy, когда Appengine уже предлагает webapp?

Лично я думаю, что стоит использовать что-то кроме webapp . Тем не менее, я склонялся бы к Колбе или Типфай .

Алекс Мартелли поддерживает tipfy в своем ответе на вопрос SO Google App Engine - Secure Cookies . Главный ответ для меня из ответа Алекса состоит в том, что tipfy это:

  1. Предназначен для работы с GAE
  2. Легкий
  3. Содержит встроенные функции, которые вы часто хотите
2 голосов
/ 21 января 2011

Они очень похожи, просто случается, что веб-приложение больше приспособлено для GAE, чем web.py. Веб-приложение очень маленькое и определенно оптимизировано для написания приложений для App Engine, поэтому, если это ваша чашка чая, вам следует ее использовать. Вы сказали, что не хотите использовать систему шаблонов Django (я не знаю, почему, это довольно просто), и это то, что веб-приложение поставляется по умолчанию. Систему шаблонов можно изменить, но я рекомендую попробовать движок Django.

Тем не менее, если вам это не нравится, не так уж сложно установить новую платформу (в основном все, что должно соответствовать WSGI). Если вы хотите использовать web.py, во что бы то ни стало, настройте его, но вам, возможно, придется немного поискать, как его настроить и настроить все для работы.

...