Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
This app provides the ability to log user actions on model instances. Action types can be defined by app developers, and can reference multiple objects. Each action type defines it's own template used for rendering output of the message. It allows verbose messages specific to the action that occurred.
Python

This branch is 60 commits behind master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
object_log
.gitignore
CHANGELOG
LICENSE
MANIFEST.in
README
setup.py

README

========================================
Django Object Log 
========================================

This app provides the ability to log user actions on model instances. Action 
types can be defined by app developers, and can reference multiple objects. 
Each action type defines it's own template used for rendering output of the 
message. It allows verbose messages specific to the action that occurred.

Object Log includes shortcuts both for adding entries and building views to 
display them.


Installation
----------------------------------------

There are several ways to install Object Log.

Object Log ships a standard distutils setup.py. A classic invocation
to install from setup.py might be::

 $ python setup.py install

You may need to add sudo in order to install to the system Python.

::

 $ sudo python setup.py install

We also have Object Log on PyPI, so it can be installed using pip.
(easy_install also works, but we do not recommend easy_install. Just use pip.)

::

 $ pip install django-object-log

If you are installing Object Log directly into a Django app, and want
to distribute Object Log with your app, simply copy the
object_log folder into your Django project.

Configuring Your Django Project
----------------------------------------

1) Add "object_log" to INSTALLED_APPS
2) Run ./manage.py syncdb
3) Add object_log.urls to urls if you wish to add views for displaying logs

Using Object Log
----------------------------------------

First, register some action types.  This can be done at any time but should
ideally be done once in models.py.  LogActions require both a key and a
template used to render that Action type.

>>> from object_log.models import LogAction
>>> LogAction.objects.register('MY_ACTION', 'path/to/my/template.html')

Now, that LogAction type can be used whenever that action occurs

>>> from object_log.models import LogItem
>>> log = LogItem.objects.log_action
>>> log('MY_ACTION', user, some_object)
>>> log('EDIT', user, some_object)
>>> log('DELETE', user, some_object)

See the wiki for more details:
http://code.osuosl.org/projects/django-object-log/wiki

Authors
-------

Object Log was originally implemented at the Oregon
State University Open Source Lab (OSUOSL).
Something went wrong with that request. Please try again.