views:

5635

answers:

14

Which python framework is best for web development in google app engine?

+14  A: 

webapp is the framework which is bundled with google app engine. The webapp framework is already installed in the app engine environment and in the SDK, so you do not need to bundle it with your application code to use it.

Besides webapp, app engine environment also supports Django, Pylons and web.py

Codeslayer
here is a link: http://code.google.com/appengine/docs/python/tools/webapp/
Piotr Findeisen
webbapp is the best because it's preinstalled? so django is the best too.
Jacek Ławrynowicz
+3  A: 

I would suggest Django as a good Python framework. There are some articles on Google which describe how you can use it with Google App Engine.

It's already included in App Engine, so all you need to do is import the Django modules as normal.

Rich Adams
+13  A: 

If you are looking for a full stack framework Django is probably what you are looking for. Here you can find an article about Running Django on Google App Engine.

Luca
I don't think this answers the question very well. I'd like to see a few more options mentioned. In particular, what I want to know is what it takes to set the other options up such as Pylons and Turbo Gears.
allyourcode
+3  A: 

I can recommend Django too. It has nice support by Google and community. Lots of examples and internal power of framework itself can save much time on coding.

dobrych
+5  A: 

As has been said, Django is already there, but WebOb is also available there. You can build your own framework upon that (see the tutorial).

zgoda
your answer which framework is available and how to build your own. how is that related to the question?
Jacek Ławrynowicz
+2  A: 

Like CodeSlayer said, google app engine have bundle some frameworks. but if you want to use it with others you can read this article
Running Django on Google App Engine
And if you need some IDE, these tutorials may help
Configuring Eclipse on Windows to Use With Google App Engine
Using Komodo Edit as an IDE for Google App Engine

Pydev now has inbuilt support for app-engine projects
Casebash
A: 

I want to know how to run the CherryPy web server in the Google App Engine, because I like it best, plus I want to know how to integrate the StringTemplate engine into the CherryPy web server so that I can use it there, too.

I have used CherryPy stand-alone and with TurboGears.

Rob Williams
A: 

Isn't Django recommended by Guido, which is now a Google employee?

maurycy
Guido claims to be impartial as far as what framework you should use; however, this may just be a political move to avoid upsetting fans of other frameworks. It does seem that he has plugged Django more than the others.
allyourcode
http://www.djangoproject.com/weblog/2006/aug/07/guidointerview/ he was more than neutral about web frameworks.
Łukasz
Kind of amusing, since [Google's Python Style Guide](http://google-styleguide.googlecode.com/svn/trunk/pyguide.html), under "Python Language Rules -> Power Features" says "Python is an extremely flexible language and gives you many fancy features such as metaclasses ... Decision: Avoid these features in your code", and Django's ORM depends on metaclasses.
Mike DeSimone
+2  A: 

Web2py is my choice just because of ease of migration and ease of deployment and testing/development on.

watr
web2py works seamlessly on appengine but i think it sometimes "hides" the virtues of appengine such as Extendeo models
PanosJee
A: 

Bottle or Itty, with jinja2 as the templating language -> Basically sinatrarb for python.

Nazarius Kappertaal
A: 

I built an app engine site using Django and found a few hidden problems. One is that to get the benefits of Django (admin area, orm integration) you need to use a patch. I chose the app-engine-patch which worked great for local dev however on production had a 10 second start up delay on each page view after the site had been idle for about a minute. Then the developers of the patch abandoned it. They've moved their work to django-nonrel which has lofty goals but, according to django-con EU will not be part of the official django in the same way the built in ORM is. So basically, a django app for app engine is going to be different than a normal django app.

Instead I recommend web2py or App Engine Oil. web2py has a special, officially supported by the devs, mode that enables compatibility with App Engine. It turns off a few features of web2py. Your app is portable to any hosting service though. Oil is a Rails like framework built just for app engine.

newz2000
A: 

I would suggest webpy, it's simple and powerful.
I've developed this app with webpy on top of gae. Source code here.

systempuntoout
A: 

I really like Google AppEngine Oil. Unfortunatelly the project seems to have come to a halt? But I've used 3.0 in a couple of projects to great success. (I am a TurboGears fan initially.)

http://code.google.com/p/google-app-engine-oil/

http://gaeo.org/

Johan Carlsson
A: 

tipfy? http://www.tipfy.org/

tipfy is a small but powerful framework made specifically for Google App Engine. It is a lot like webapp:

from tipfy import RequestHandler, Response
class HelloWorldHandler(RequestHandler):
    def get(self):
        return Response('Hello, World!')

...but offers a bunch of features and goodies that webapp misses: i18n, sessions, own authentication, flash messages and more. Everything in a modular, lightweight way, tuned for App Engine. You use only what you need, when you need.

BrutusCat