app-engine-patch


Use Django on App Engine - with lots of goodies



Switch to Django-nonrel

You should use Django-nonrel from now on because app-engine-patch has been discontinued!!!
diagramming software ideation and wireframing software prototyping



Join the Django-nonrel project and follow the Django-nonrel blog (which is written with Django-nonrel) if you want to use Django's ORM on App Engine and other NoSQL / non-relational databases. Django-nonrel will allow to run your code on App Engine, MongoDB, Cassandra, etc., and SQL without any modifications and at the same time make you many times more productive by automating NoSQL practices such as denormalization for you! That's the plan and we've come pretty far (there's even full-text search with nonrel-search) and we support 99% of App Engine's features (in theory all features can be supported), but we need help with the really advanced stuff and more backends, so we can get officially integrated into Django.











app-engine-patch

With app-engine-patch a major part of Django works on App Engine without any modifications. The most important change is that you have to use Google's Model class because the development model is too different from Django (at least with Django's current API).

We also provide lots of useful extra features (see below).

Did you know? Giftag is powered by app-engine-patch! See other projects using app-engine-patch.

Full-text search

Add full-text search to your site with just a few lines of code: gae-search

Latest release: 1.1RC on Aug 02, 2009

New features: Django 1.1 support. See release notes

Download now! --- See it in action --- Get started --- Release news feed

Reminder: Read the release notes to make sure you don't miss anything before you upgrade.

Please support us by placing this logo/link on your site: http://code.google.com/p/app-engine-patch/'>http://app-engine-patch.googlecode.com/files/powered-by-app-engine-patch.png' alt='powered by app-engine-patch' />

Quickstart

Extract the sample project. Run the dev_appserver with manage.py runserver. Upload your website with manage.py update (don't forget to set your appid in app.yaml). Read more...

Feature highlights

app-engine-patch

  • Django's admin interface
  • Django's authentication framework and optional integration with Google Accounts
  • Django's sites, flatpages, redirects, and some parts of contenttypes
  • Django's session and cache backends (db sessions optimized with memcache)
  • Support for Django's mail functions
  • More complete ModelForm (than djangoforms) via django.forms package
  • Support for generic views (list_detail, create_update, and simple)
  • Model serialization/deserialization
  • and much more; get started

ragendja (snippet library)

  • Easy to use zip packages
  • Integrated profiler
  • Media generator
  • Improved auth framework: You can provide your own User class (simplifies your code compared to using get_profile())
  • LoginRequiredMiddleware that saves you from adding @login_required to most of your views
  • Datastore utils like an @transaction decorator and get_object_or_404()
  • Shortcuts like JSONResponse and a render_to_response() based on RequestContext
  • Global templatetags (GLOBALTAGS in settings.py)
  • An improved template loader that gets rid of file name prefixes (ragendja.template.app_prefixed_loader)
  • ModelTestCase that allows for verifying the DB contents
  • Special features for writing self-contained, reusable apps
  • and much more

Comparison to google-app-engine-django (appengine/django-helper)

Conceptual difference: We don't introduce yet another Model class. Just use Google's Model. In a future release we might support Django's own Model.

Missing features: None! Doesn't that make the decision easy? :)

Our Django port is more complete (e.g., we have the admin interface, sites, flatpages, etc.) and we have lots of extra features (media generator, everything in ragendja, better ModelForms, ...) and we are constantly improving app-engine-patch to make Django development easier. We also work on features and conventions that allow for fully reusable plug-n-play-style apps, so please just download our sample project and get started.

Contribute

Of course, we're always happy about contributions, no matter how small. Please release at least a few useful parts of your code as open-source or help us port more parts of Django or other Django apps, so we can make Django development easier on App Engine.

Project Information

Labels:
appengine ragendja django gae