Extend ForeignKey field for User. It support ``auto_now`` and ``auto_now_add``
Project description
Userel is a extend ForeignKey for User model. It add auto_now and auto_now_add for setting current access user automatically.
Install
sudo pip install django-userel
or:
sudo pip install git+https://github.com/lambdalisue/django-userel.git#egg=django-userel
How to Use
Append ‘userel’ to INSTALLED_APPS
Add ‘userel.middlewares.UserelDefaultBackendMiddleware’ to your MIDDLEWARE_CLASSES if you use default userel backend
Example mini blog app
models.py:
from django.db import models from django.contrib.auth.models import User from userel.fields import UserelField class Entry(models.Model): PUB_STATES = ( ('public', 'public entry'), ('protected', 'login required'), ('private', 'secret entry'), ) pub_state = models.CharField('publish status', choices=PUB_STATES) title = models.CharField('title', max_length=140) body = models.TextField('body') created_by = UserelField('created by', related_name='entries_create', auto_now_add=True) updated_by = UserelField('updated_by', related_name='entries_update', auto_now=True)
Settings
- USEREL_BACKEND
Class or string path of backend. the backend is used to determine user when object is created/updated.
Backend
The default backend use thread_locals storategy to get current request in signal call.
If you want to change the strategy or whatever, create your own backend.
A backend is a class which have get_user method to determine current user.
- UserelDefaultBackend
Default backend. This backend return None when no request found or AnonymousUser create/update object.
- UserelSystemUserBackend
System user backend. This backend return system user when no request found or AnonymousUser create/update object.
system user is determined with get_system_user method and default is User.objects.get(pk=1)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file django-userel-0.0.3.tar.gz
.
File metadata
- Download URL: django-userel-0.0.3.tar.gz
- Upload date:
- Size: 14.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7ab4aec751854e562e770ff8e2c7fcf0873d4f6b22e65a66cd8071c5fa8cf564 |
|
MD5 | a6e507ddd2d8b4e235e98a2c8caf4e48 |
|
BLAKE2b-256 | d27ed8d56396e851405bcffdc7691b865d017006453567480147c50ee57936ac |