Skip to content
This repository has been archived by the owner on Aug 21, 2018. It is now read-only.

trashnroll/django-extents

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Django Extents

The Django Extents is a safe way to declaratively extend any model beyond your application. Possible conflicts are resolved automatically by adding the app_label prefix to each contributed field or method name.

Currently Django Extents provides the following features:

  • Declarative way of extending of a foreign app's models (using monkey patching technique under the hood)
  • Using your Extent subclass instead of the original model's one, including all (I hope) of the django ORM features without specifying any prefixes (Extents take care of them on any underlying layer).
  • Registering extent model in django-admin, implemented just for the sake of compatibility (the original model should be unregistered first)

In general, Extent subclasses try to look and act just like normal django models.

Installation

  1. Add the django_extents directory to your Python path.

Running tests

  1. Enable the django_extents application in your project's settings.py file
  2. Run ./manage.py test django_extents command in project root directory

Code samples

For code samples see tests sources.

TODOs and BUGS

See: http://github.com/TrashNRoll/django-extents/issues

About

The Django Extents is a safe way to declaratively extend any model beyond your application. It's just a proof of concept at this moment. I need feedback.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages