Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Best Django features that do work on Google App Engine?

I'm in the process of starting a new project on App Engine and Brandon's advice made me think.

Many features of Django don't work on Google App Engine: the admin interface and the modeling framework for example.

Considering that App Engine already has a simple framework built-in ("webapp") and I can freely pick from the many Python templating solutions (including Django's) without tying myself to a relatively heavy weight (but in this case neutered) framework what are the top features that I would miss the most if I don't go with Django?

Background: I only have minimal Django experience and I'm considering using Mako templates (for speed).

like image 652
nyenyec Avatar asked Oct 14 '22 17:10

nyenyec


2 Answers

The main differences is what you already know that it does not support Admin and Django's (excellent) ORM ofcourse. This isn't surprising, though, since Google's own Datastore API is excellent. And you don't have to learn GQL to play with it.

But using Django means that you can take advantage of more existing functionality (Django middleware, etc.) and, should you want to move away from Google App Engine in the future, there will be less code to rewrite.

Also Google released the Google App Engine Helper for Django which can be helpful to you in setting GAE Django app.

So, i would rather go for Google App Engine applications using Django instead of pure webapp.

Edit on Request: Django's existing functionality i mentioned, can be taken in terms of many useful applications and mostly middlewares being developed by a huge DJango Community day by day.

Apart from useful Built-in-Middlewares provided by DJango itself, there are many others which can suite few specific usage too.

To name few (which sound interesting to me):

And to play with them efficiently "Conditional middleware execution in Django" can be handy.

Search for more, you will find more.

like image 163
simplyharsh Avatar answered Oct 20 '22 16:10

simplyharsh


It seems the admin interface is getting support with app-engine-patch 1.0beta (link to announcement).

To me this is probably the best feature in Django. (Although I'll have to see how it works in App Engine's no-joins world.)

like image 40
nyenyec Avatar answered Oct 20 '22 15:10

nyenyec