src/notes/api/filters.py
author ymh <ymh.work@gmail.com>
Mon, 26 Nov 2018 13:57:30 +0100
changeset 178 89d8432aad9f
parent 128 34a75bd8d0b9
child 183 f8f3af9e5c83
permissions -rw-r--r--
Add a IRINOTES_CONFIG_BASE to allow giving a config file location

'''
Inspired by https://stackoverflow.com/a/36289332
'''
from django_filters.rest_framework import (BaseInFilter, Filter, FilterSet,
                                           UUIDFilter)

from ..models import Note, Session

class ExtIdFilter(BaseInFilter, UUIDFilter):
    pass

class CoreFilterSet(FilterSet):
    ext_id__in = ExtIdFilter(name='ext_id')

class SessionFilterSet(CoreFilterSet):
    class Meta:
        model = Session
        fields = ['ext_id__in']

class NoteFilterSet(CoreFilterSet):
    class Meta:
        model = Note
        fields = ['ext_id__in']