API Reference

genia.models

Django models, managers and mixins

For supporting generational data with django-genia

class genia.models.Generation(*args, **kwargs)

Bases: django.db.models.base.Model

Stores history of data generations for a given app

Parameters:
  • id (AutoField) – Id
  • app_name (CharField) – App name
  • index (IntegerField) – Generation number for this app
  • created (DateTimeField) – Created
  • last_updated (DateTimeField) – Timestamp of the last time the data was changed. Manually set.
  • active (BooleanField) – Is this the active generation for the given app? Note that only one generation can be active at a time
make_active()

Set the model to be the active generation for its app

If there is already an active generation, it will be unset.

save(*args, **kwargs)

Override base model save method

Automatically sets the index of a new generation to the right (incremented) value.

class genia.models.GenerationManager

Bases: django.db.models.manager.Manager

Manager for generation objects

active(app_name)

Get the one active generation for the given app

Parameters:app_name (String) – Name of the app
Returns:Active generation
Return type:Generation object
class genia.models.GenerationalModelManager

Bases: django.db.models.manager.Manager

Manager for models that are implementing generational data

get_query_set()

Override the base get_query_set

Returns:Current QuerySet filtered to only objects in the active generation
Return type:QuerySet object
class genia.models.GenerationalModelMixin(*args, **kwargs)

Bases: django.db.models.base.Model

Mixin class for models that represent generational data

Parameters:generation_id (ForeignKey to Generation) – Generation
classmethod active_generation()

Get the active generation for this model’s application data

Returns:Active generation for the model’s app
Return type:Generation object

genia.utils

Helper functions and other misc code that is shared within django-genia

genia.utils.get_app_name_for_model(model)

Extract the app name from a model class

Parameters:model – Generational model
Returns:App name containing model
Return type:String

Project Versions

Table Of Contents

Previous topic

Usage

This Page