Django black magic for the brave
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.



ao.jango provides utility classes and functions for Django that might be useful for some poeple, but may turn out to be harmful for others. Just becouse I find it useful, it doesn't mean it's actually worth tryitg.

Class-based views

ao.jango pravides a view class, ao.jango.views.View, that can be used as an abstract base class for your views. To use your views then, you just need to point your urlconf to the corresponding subclass. No initialization is needed: the metaclass will initialize the class if the first argument provided is a Request class (or one of its subclasses).

You can also create your own ABCs by subclassing ao.jango.views.View and setting the abstract = True class attribute. Note that the abstract attribute is not inherited by subclasses.

Automatic (declarative) URL configuration

If you use ao.jango.views.View as an ABC for your views, you don't even need to use a URLConf with Django: the view metaclass will automatically create one for you. It will use the app name and the view subclass name to guess the regex for the pattern, but you can very easily customize it by setting a few attributes in your view subclasses and your apps' files.

If you're still not scared away, you might want to check out the rest of the documentation (along with some examples and boilerplate code).