Modular user model for Django
Project description
Modular user model for Django
django-modular-user lets you easily customize Django's User model, without any compromises. Unlike Django's own AbstractBaseUser, here nothing is irremovable, you can use exactly the parts you want.
Requirements
- Django 2.0+
Installation
pip install django-modular-user
- Create a new Django package with following models.py, and a migrations/ subdirectory:
from django_modular_user.user import AbstractUser
class User(AbstractUser):
pass
- In
settings.py, setAUTH_USER_MODEL = 'your_new_package_name.User' - Run
./manage.py makemigrations
Configuration
You may configure the basic profile data with USER_CORE_MODULES setting. For example, to create an User model without usernames and passwords, that uses email as the username, you may use:
USER_CORE_MODULES = [
'django_modular_user.user:AbstractBaseUser',
'django_modular_user.user:EmailMixin', # email
'django_modular_user.user:NamePartsMixin', # given_name, middle_name, family_name
'django_modular_user.user:ActiveMixin', # is_active
'django_modular_user.user:StaffMixin', # is_staff
'django_modular_user.user:PermissionsMixin', # is_superuser and other permissions
'django_modular_user.user:JoinedMixin', # date_joined
]
USERNAME_FIELD = 'email'
USER_EMAIL_UNIQUE = True
App-specific User mixins
django-modular-user automatically scans all INSTALLED_APPS for user.py modules that contain a UserMixin class. Such mixins are automatically added to the User model; you only need to run ./manage.py makemigrations after adding an app to your INSTALLED_APPS list.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file django-modular-user-0.2.1.tar.gz.
File metadata
- Download URL: django-modular-user-0.2.1.tar.gz
- Upload date:
- Size: 11.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.38.0 CPython/3.7.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2df4fc0c193f16d92ba8cbdf914a5a6acbf592ba37fb764a2f2d276726c55372
|
|
| MD5 |
b0f4b9675b6f95036ebdaa3269790ba0
|
|
| BLAKE2b-256 |
3880a3f2d42a0c2cc5c9b94cafc4db85771d4ecbd43226b4ae721273faed6130
|
File details
Details for the file django_modular_user-0.2.1-py3-none-any.whl.
File metadata
- Download URL: django_modular_user-0.2.1-py3-none-any.whl
- Upload date:
- Size: 16.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.38.0 CPython/3.7.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9e43a3a5c5d73494d36362c30341b02ddf28d1e2118b63123195e39666d3e4c1
|
|
| MD5 |
a661986320d55e396b4ac13f9a9f750e
|
|
| BLAKE2b-256 |
9bfdd34ccdaaed4de64f032e93f55e9ce7c0123083b949064c57cde13a3877a5
|