Skip to content

Latest commit

 

History

History
65 lines (48 loc) · 1.67 KB

README.rst

File metadata and controls

65 lines (48 loc) · 1.67 KB

django-actions-logger

A Django app that keeps a log of user actions or changes in objects You can log arbitrary action with user and optional info that goes with your action.

this code forked from django-auditlog and add my new ideas

Quick start

  1. Add "actionslog" to your INSTALLED_APPS setting like this:

    INSTALLED_APPS = [
        ...
        'actionslog',
    ]
    
  2. Run python manage.py migrate to create models.

  3. Set AL_LOG_ACTION_CHOICES in project settings.py file if need customize:

    AL_LOG_ACTION_CHOICES = [
        (CREATE, _("create")),
        (SUCCESS, _("success")),
        (VIEW, _("view")),
        (UPDATE, _("update")),
        (DELETE, _("delete")),
        (ERROR, _("error")),
    ]
    

Usage

Simple:

status_msg = 'Reset password %s' % ('success' if success else 'error',)
la_kwargs = {
    'request': request,
    'instance': obj,
    'user': request.user,
    'action_info': {'info': status_msg},
}
LogAction.objects.create_log_action(**la_kwargs)

or

status_msg = 'Reset password %s' % ('success' if success else 'error',)
la_kwargs = {
    'request': request,
    'instance': obj,
    'user': request.user,
    'action': LogAction.SUCCESS if success else LogAction.ERROR,
    'changes': status_msg,
}
LogAction.objects.create_log_action(**la_kwargs)