Відмова: Я є автором tipfy та webapp2.
Великою перевагою дотримання webapp (або його природної еволюції, webapp2) є те, що вам не потрібно створювати власні версії для існуючих обробників SDK для обраної вами рамки.
Наприклад, відкладений використовує обробник веб-сторінки. Щоб використовувати його в чистому режимі Flask, використовуючи werkzeug.Request і werkzeug.Response, вам потрібно буде застосувати відкладені для нього (як я це робив тут для tipfy).
Те саме відбувається і з іншими обробниками: blobstore (Werkzeug досі не підтримує запити діапазону, тому вам потрібно буде використовувати WebOb, навіть якщо ви створили власний обробник - див. Tipfy.appengine.blobstore ), пошту, XMPP тощо. або інші, які в майбутньому будуть включені до SDK.
І те ж саме відбувається з бібліотеками, створеними з App Engine на увазі, як ProtoRPC , який базується на webapp і потребує порту чи адаптера для роботи з іншими рамками, якщо ви не хочете змішувати webapp і ваш- frame-of -of- вибір обробників у тому ж додатку.
Таким чином, навіть якщо ви виберете іншу основу, ви закінчите: a) використання webapp в деяких особливих випадках або b) необхідність створення та підтримки своїх версій для конкретних обробників SDK або функцій, якщо ви їх будете використовувати.
Я дуже віддаю перевагу Werkzeug через WebOb, але після перенесення та підтримання версій обробників SDK, які працюють в основному за допомогою tipfy, я зрозумів, що це втрачена причина - підтримувати GAE на тривалий термін, найкраще залишатися поруч webapp / WebOb. Це робить підтримку бібліотек SDK легким духом, обслуговування стає набагато простішим, воно є більш надійним, оскільки нові бібліотеки та функції SDK працюватимуть нестабільно, і є користь великої спільноти, яка працює над тими ж інструментами App Engine.
На захист конкретних webapp2 підсумовані тут . Додайте до тих, що webapp2 можна використовувати за межами App Engine і його легко налаштувати так, щоб виглядати як популярні мікро-рамки, і у вас є набір вагомих причин для цього. Крім того, у webapp2 є великий шанс бути включеним у майбутній реліз SDK (це є позаофіційним, не цитуйте мене :-), що підштовхне його і принесе нових розробників і внесок.
Це сказало, що я великий фанат Веркзеуга та хлопців Pocoo і багато позичив у Фляска та інших (web.py, Торнадо), але - і, знаєте, я упереджений - вищезгадані переваги webapp2 повинні враховувати.
flask-babel
для підтримки декількох мов таflask-seasurf
для підтримки CSRF для захисту моїх форм.