Skip to main content

Version of PyPI package Number of downloads of PyPI package Supported versions of Python Package license

Use django-candv-choices with django-rest-framework.

Table of contents

Installation

Install from PyPI:

$ pip install django-rf-candv-choices

Usage

Serializing choices

For example, you have some model which uses candv_x.django.choices.ChoiceField to store one of allowed values. This might be a User model, which has user_role field, where values for user_role are defined by USER_ROLES constants container.

Use candv_x.rest_framework.choices.ChoiceField for user_role serialization:

from rest_framework import serializers
from candv_x.rest_framework.choices import ChoiceField

from .constants import USER_ROLES
from .models import User


class UserSerializer(serializers.ModelSerializer):
    user_role = ChoiceField(USER_ROLES)

    class Meta:
        model = User
        fields = ('id', 'name', 'user_role', )

Exposing choices to the outer world

If you need to expose list of possible choices for your field, then you can use a ChoicesList base view to get a class-based view:

from candv_x.rest_framework.choices import ChoicesList

from .constants import USER_ROLES


class UserRoleList(ChoicesList):
    choices = USER_ROLES

The only thing you need to do is to define choices attribute.

There is a faster way also: you can use a coalitions_list view factory to get a function-based view:

from candv_x.rest_framework.choices import simple_choices_list

from .constants import USER_ROLES


user_role_list = simple_choices_list(USER_ROLES)

Changelog

You can click a version name to see a diff with the previous one.

  • 1.0.0 (Aug 1, 2015)

    Initial version

Release files for django-rf-candv-choices 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for django-rf-candv-choices 1.0.0
File Size Uploaded
django-rf-candv-choices-1.0.0.tar.gz 6.1 kB Details

Release files / django-rf-candv-choices-1.0.0.tar.gz

Download URL django-rf-candv-choices-1.0.0.tar.gz
Size 6.1 kB
Tags Source
SHA-256 checksum
How to use checksums
73a5d8ffacdd6999bcb148f2fe85f6935e9fcae33f48b72d160dcbfd343e6b0c
BLAKE2b-256 checksum
How to use checksums
4a253346d41697f279607543f696cc89cab546ce9a9787d29f5ab66deda37764
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

1.0.0 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page