Skip to main content

Core library for Nexus django projects

Project description

https://badge.fury.io/py/django-genomix.svg https://travis-ci.org/chopdgd/django-genomix.svg?branch=develop https://codecov.io/gh/chopdgd/django-genomix/branch/develop/graph/badge.svg Updates Python 3

Core library for Nexus django projects

Documentation

The full documentation is at https://django-genomix.readthedocs.io.

Quickstart

Install Django GenomiX:

pip install django-genomix

Add it to your INSTALLED_APPS:

INSTALLED_APPS = (
    ...
    'genomix',
    ...
)

Features

  1. DisplayChoiceField - display representation values for choice fields in REST APIs.:

from genomix.fields import DisplayChoiceField
from rest_framework import serializers

from . import choices


class ExampleSerializer(serializers.ModelSerializer):

    status = DisplayChoiceField(choices=choices.STATUS_OPTIONS)
  1. UserRelatedField - display username for a REST API with a user relation.:

from django.contrib.auth import get_user_model

from genomix.fields import UserRelatedField
from rest_framework import serializers


class ExampleSerializer(serializers.ModelSerializer):

    user = UserRelatedField(queryset=get_user_model().objects.all())
  1. ContentRelatedField - display ContentType model for a REST API using a generic relation.:

from django.contrib.auth import get_user_model
from django.contrib.contenttypes.models import ContentType

from genomix.fields import ContentRelatedField
from rest_framework import serializers


class ExampleSerializer(serializers.ModelSerializer):

    content_type = ContentRelatedField(queryset=ContentType.objects.all())
  1. DisplayChoiceFilter - Filter by representation values in a REST API.:

import django_filters
from genomix.filters import DisplayChoiceFilter

from . import choices


class ExampleFilter(django_filters.rest_framework.FilterSet):

    source = DisplayChoiceFilter(choices=choices.SOURCES)

Running Tests

Does the code actually work?

source <YOURVIRTUALENV>/bin/activate
(myenv) $ pip install tox
(myenv) $ tox

Credits

Tools used in rendering this package:

History

0.1.0 (2017-12-02)

  • First release on PyPI.

  • TimeStampedLabelModel abstract model class

  • UserRelatedField for use in DRF serializers

  • DisplayChoiceField for use in DRF serializers

  • ContentRelatedField for use in DRF serializers

  • DefaultRouter that allows you to extend other routers

  • ModelMixinTestCase that allows you to test abstract model classes

0.2.0 (2017-12-31)

0.2.0 Changelog

  • Added utils function to retrieve data from a URL

  • Added utils function to retrieve compressed data from a URL

0.3.0 (2018-01-04)

0.3.0 Changelog

  • DisplayChoiceFilter for use in django_filters. Filter by diplay fields for a choice field in a REST API

0.4.0 (2018-01-05)

0.4.0 Changelog

  • Improved docs

  • Beta release

0.4.1 (2018-01-09)

0.4.1 Changelog

  • DisplayChoiceFilter fixed coerce method to handle Choices with different display values.

0.5.0 (2018-02-09)

0.5.0 Changelog

  • Updated requirements to the latest.

0.6.0 (2018-04-07)

0.6.0 Changelog

  • Added support for Django 2.0 and Python3.6

  • Dropped support for Django <1.11 and Python 2.7, 3.3, 3.4

0.6.1 (2018-04-18)

0.6.1 Changelog

  • Upgraded 3rd party libs

0.6.2 (2018-05-16)

0.6.2 Changelog

  • Updated setup.py to read install_requires from requirements.txt

0.6.3 (2018-08-13)

0.6.3 Changelog

  • Updated 3rd party requirements. Some requirements had changed so it was causing failures

0.6.4 (2018-10-29)

0.6.4 Changelog

  • Updated deps and adjusted for new flake8 reqs

0.6.5 (2019-02-07)

0.6.5 Changelog

  • Updated deps

0.6.6 (2019-04-10)

0.6.6 Changelog

  • Updated deps

  • Updated travis to use xenial distribution. Django 2.1 dropped support for SQLite < 3.8.3

0.6.7 (2019-05-30)

0.6.7 Changelog

  • Updated deps

0.6.8 (2019-07-26)

0.6.8 Changelog

  • Updated deps

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

django-genomix-0.6.8.tar.gz (9.3 kB view details)

Uploaded Source

Built Distribution

django_genomix-0.6.8-py2.py3-none-any.whl (8.1 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file django-genomix-0.6.8.tar.gz.

File metadata

  • Download URL: django-genomix-0.6.8.tar.gz
  • Upload date:
  • Size: 9.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.3

File hashes

Hashes for django-genomix-0.6.8.tar.gz
Algorithm Hash digest
SHA256 3bc7a731c4646b427511e8f2a0d0fa6cbf1e16a14ebd7b422a9b79f189e31807
MD5 69001dc1af347e5c872e5ce4e6b65a28
BLAKE2b-256 0baab01f928e120c3534f5ed3657e1360573c280433c382dd0fd6477a78faff1

See more details on using hashes here.

Provenance

File details

Details for the file django_genomix-0.6.8-py2.py3-none-any.whl.

File metadata

  • Download URL: django_genomix-0.6.8-py2.py3-none-any.whl
  • Upload date:
  • Size: 8.1 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.3

File hashes

Hashes for django_genomix-0.6.8-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 def2b1599af20fa40b9c36a3474e79db91656a6f1b0087678d7c3a338390a596
MD5 5bce6944166421eadb054fd4fd495ee3
BLAKE2b-256 d35486b2efaa93552ddf1d719e16e97534cbecc676f6ae333492cec86a00ec31

See more details on using hashes here.

Provenance

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