Skip to main content

The small frameworks that helps to write reusable django apps with generic relations

Project description Wheel Status Supported Python versions

This app provides some snippets (such as abstract models and managers with some useful methods) to simplyfy creation of another pluggable apps.

The license is MIT.


pip install django-generic-helpers

After you can add the generic_helpers app into your INSTALLED_APPS. If you aren’t want to run test, you can skip this step.


To use this app, just import GenericRelationModel class from generic_helpers.models package and inherit your model from it:

from django.db import models
from generic_helpers.models import GenericRelationModel

class MyModel(GenericRelationModel):
    title = models.CharField(max_length=255)

Now MyModel class has content_object attribute and you can create MyModel instances using generic relation:

>>> from django.contrib.auth.models import User
>>> user = User.objects.get(pk=1)
>>> my_model = MyModel.objects.create(title='title',
...                                   content_object=user)

In this example how you can see we have used User.

Also your model manager has a get_for_object method for quick filtering by content_object complex field:

>>> from django.contrib.auth.models import User
>>> user = User.objects.get(pk=1)
>>> models_for_user = MyModel.objects.get_for_object(user)


If you’ve found a bug, implemented a feature and think it is useful, or you’ve own pluggable app and want to use django-generic-helpers in it, then please consider contributing. Patches, pull requests or just suggestions are welcome!


  • Update django head version


  • Update django head version


  • Add CHANGELOG.rst into manifest


  • Remove deprecation warning


  • Moved the ct shortcut into utils module


  • Added CHANGELOG :)
  • Added Python 3.4x support;
  • Dropped Python 3.2x support;
  • Improved code styling with pep8;
  • Wheel available;
  • Coverage support;
  • Updated Django head version;
  • Fix 0.3.1 install bug (import six from django).

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
django_generic_helpers-0.3.7-py2.py3-none-any.whl (9.8 kB) Copy SHA256 hash SHA256 Wheel 3.4
django-generic-helpers-0.3.7.tar.bz2 (5.9 kB) Copy SHA256 hash SHA256 Source None
django-generic-helpers-0.3.7.tar.gz (5.8 kB) Copy SHA256 hash SHA256 Source None (13.2 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page