Лучшие функции Django, которые работают на Google App Engine?
Я нахожусь в процессе запуска нового проекта на App Engine, и совет Брэндона заставил меня задуматься.
Многие функции Django не работают в Google App Engine: например, интерфейс администратора и среда моделирования.
Учитывая, что в App Engine уже есть встроенный простой фреймворк (" webapp"), и я могу свободно выбирать из многих шаблонных решений Python (включая Django), не привязывая себя к относительно тяжелому (но в данном случае кастрированному) фреймворку. главные черты, которые мне бы больше всего не хватало, если бы я не пошел с Джанго?
Фон: у меня только минимальный опыт работы с Django, и я рассматриваю возможность использования шаблонов Mako (для скорости).
4 ответа
Основное отличие состоит в том, что вы уже знаете, что он не поддерживает Admin и Django (отличный) ORM конечно. Это не удивительно, так как собственный API Google Datastore превосходен. И вам не нужно учить GQL, чтобы играть с ним.
Но использование Django означает, что вы можете воспользоваться более существующей функциональностью (промежуточное программное обеспечение Django и т. Д.), И, если вы захотите в будущем отказаться от Google App Engine, будет меньше кода для перезаписи.
Кроме того, Google выпустила помощника Google App Engine для Django, который может помочь вам в настройке приложения GAE Django.
Поэтому я бы предпочел использовать приложения Google App Engine, используя Django вместо чистого веб-приложения.
Редактирование по запросу. Существующая функциональность Django, о которой я упоминал, может быть использована для многих полезных приложений и в основном промежуточного программного обеспечения, разрабатываемых огромным сообществом DJango изо дня в день.
Помимо полезных встроенных промежуточных программ, предоставляемых самим DJango, существует множество других, которые также могут подходить для нескольких конкретных целей.
Чтобы назвать несколько (которые звучат интересно для меня):
- Google Analytics DJango Middleware
- YUI Loader как промежуточное ПО Django
- Промежуточное ПО для перенаправления домена Django
- ForceHTTPS Django промежуточное программное обеспечение и т.д...
И для эффективной игры с ними "условное выполнение промежуточного программного обеспечения в Django" может быть удобно.
Ищите больше, вы найдете больше.
Похоже, что интерфейс администратора получает поддержку с app-engine-patch 1.0beta ( ссылка на объявление).
Для меня это, вероятно, лучшая особенность в Django. (Хотя мне нужно будет посмотреть, как это работает в мире App Engine без присоединения.)
На момент написания статьи большинство функций django были перенесены в GAE с помощью проекта Google Appengine Patch.
Главное, что еще не было поддержки моделей Django, вы должны использовать модели GAE db. Но это не так больно.
Просто получите Appengine-Patch и попробуйте.
Сделайте себе одолжение и не трогайте движок приложения.
Если или скорее, когда Google изменит правила, ваше время и усилия, потраченные на разработку приложения, будут потеряны. Это (AppEngine) является уместным, если вам что-то не нравится, вы фактически потеряли свои инвестиции. Вы не можете просто взять свое приложение и запустить его где-нибудь еще. Google не благотворительность - они изменят правила, потому что они могут с их проблемами выше незначительных вас. Это худший вид замков...