Skip to main content

Create custom-user profiles easily

Project description

Quick start

Add to INSTALLED_APPS setting

INSTALLED_APPS = (
    # ...
    'custom_user',
    'custom_user_profiles
)

Set AUTH_USER_MODEL setting

AUTH_USER_MODEL = 'custom_user_profiles.CustomUser'

the CustomUser inherit from AbstractEmailUser model from [django-custom-user](https://github.com/jcugat/django-custom-user)

If you want to create your own custom user, extend custom_user_profiles.models.AbstractCustomUser.

from custom_user_profiles.models import AbstractCustomUser

class CustomUser(AbstractCustomUser):
    # ...

Create your profile models

from custom_user_profiles.models import Profile

class Buyer(Profile):
    # ...

class Seller(Profile):
    # ...

Usage

@login_required
def view(request):
    profile = request.user.profile
    if request.user.is_seller:
        # ...

Also AbstractCustomUser provides a chainable QuerySet manager:

from django.contrib.auth import get_user_model
User = get_user_model()

User.queryset.seller() # get all users with 'seller' profile
User.queryset.buyer() # get all users with 'buyer' profile
User.queryset.something() # raises django.core.exceptions.FieldError
objects manager is still available and inherit from django’s BaseUserManager

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

custom-user-profiles-1.1.1.tar.gz (1.8 kB view hashes)

Uploaded Source

Built Distribution

custom_user_profiles-1.1.1-py2-none-any.whl (3.5 kB view hashes)

Uploaded Python 2

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page