cri_api.views module

class cri_api.views.CRICardsView(**kwargs)[source]

Bases: rest_framework.generics.CreateAPIView

permission_classes = [<class 'cri_api.permissions.CanIssueCards'>]
queryset
serializer_class

alias of cri_api.serializers.card.CardGenerationSerializer

class cri_api.views.CRIGroupHistoryView(**kwargs)[source]

Bases: rest_framework.generics.ListAPIView

filter_queryset(queryset)[source]

Given a queryset, filter it with whichever filter backend is in use.

You are unlikely to want to override this method, although you may need to call it either from a list view, or from a custom get_object method if you want to apply the configured filtering backend to the default queryset.

get_object()[source]

Returns the object the view is displaying.

You may want to override this if you need to provide non-standard queryset lookups. Eg if objects are referenced using multiple keyword arguments in the url conf.

get_queryset()[source]

Get the list of items for this view. This must be an iterable, and may be a queryset. Defaults to using self.queryset.

This method should always be used rather than accessing self.queryset directly, as self.queryset gets evaluated only once, and those results are cached for all subsequent requests.

You may want to override this if you need to provide different querysets depending on the incoming request.

(Eg. return a list of items that is specific to the user)

get_serializer(*args, **kwargs)[source]

Return the serializer instance that should be used for validating and deserializing input, and for serializing output.

lookup_field = 'slug'
lookup_url_kwarg = 'slug'
queryset
real_queryset
serializer_class

alias of cri_api.serializers.group.CRIComputedMembershipSerializer

class cri_api.views.CRIGroupMembersView(**kwargs)[source]

Bases: cri_api.views.CRIGroupHistoryView

filter_queryset(queryset)[source]

Given a queryset, filter it with whichever filter backend is in use.

You are unlikely to want to override this method, although you may need to call it either from a list view, or from a custom get_object method if you want to apply the configured filtering backend to the default queryset.

get_serializer(*args, **kwargs)[source]

Return the serializer instance that should be used for validating and deserializing input, and for serializing output.

real_queryset
serializer_class

alias of cri_api.serializers.base.SimpleCRIUserSerializer

class cri_api.views.CRIGroupViewSet(**kwargs)[source]

Bases: rest_framework.viewsets.ModelViewSet

basename = None
description = None
detail = None
filter_queryset(queryset)[source]

Given a queryset, filter it with whichever filter backend is in use.

You are unlikely to want to override this method, although you may need to call it either from a list view, or from a custom get_object method if you want to apply the configured filtering backend to the default queryset.

filterset_fields = ('kind', 'private')
lookup_field = 'slug'
name = None
queryset
serializer_class

alias of cri_api.serializers.group.CRIGroupSerializer

suffix = None
class cri_api.views.CRIUserViewSet(**kwargs)[source]

Bases: cri_api.views.DynamicSerializerClassMixin, rest_framework.viewsets.ModelViewSet

basename = None
create(request, *args, **kwargs)[source]
description = None
detail = None
filterset_class = None
lookup_field = 'username'
lookup_url_kwarg = 'login'
lookup_value_regex = '[^/]+'
me(request, **_kwargs)[source]
name = None
queryset
search(request, **_kwargs)[source]
serializer_action_classes = {'create': <class 'cri_api.serializers.user.CRIUserCreateSerializer'>}
serializer_class

alias of cri_api.serializers.user.CRIUserSerializer

suffix = None
class cri_api.views.CampusViewSet(**kwargs)[source]

Bases: rest_framework.viewsets.ModelViewSet

basename = None
description = None
detail = None
lookup_field = 'group__slug'
lookup_url_kwarg = 'slug'
name = None
queryset
serializer_class

alias of cri_api.serializers.campus.CampusSerializer

suffix = None
class cri_api.views.DynamicSerializerClassMixin[source]

Bases: object

get_serializer_class()[source]

A class which inherits this mixins should have variable serializer_action_classes. Look for serializer class in self.serializer_action_classes, which should be a dict mapping action name (key) to serializer class (value), i.e.: class SampleViewSet(viewsets.ViewSet):

serializer_class = DocumentSerializer serializer_action_classes = {

‘upload’: UploadDocumentSerializer, ‘download’: DownloadDocumentSerializer,

} @action def upload:

If there’s no entry for that action then just fallback to the regular get_serializer_class lookup: self.serializer_class, DefaultSerializer.

class cri_api.views.GroupMailAliasViewSet(**kwargs)[source]

Bases: cri_api.views.MailAliasViewSetMixin, rest_framework.mixins.UpdateModelMixin, rest_framework.mixins.DestroyModelMixin, rest_framework.viewsets.GenericViewSet

basename = None
description = None
detail = None
model

alias of cri_models.models.crigroup.CRIGroup

model_lookup_field = 'slug'
model_lookup_url_kwarg = 'slug'
name = None
suffix = None
class cri_api.views.MailAliasViewSetMixin[source]

Bases: object

destroy(request, *_args, **kwargs)[source]
dispatch(request, *args, **kwargs)[source]
http_method_names = ['put', 'delete', 'head', 'options', 'trace']
lookup_field = 'email'
lookup_url_kwarg = 'email'
lookup_value_regex = '[^/]+'
permission_classes = [<class 'rest_framework.permissions.DjangoModelPermissions'>]
queryset
serializer_class

alias of rest_framework.serializers.Serializer

update(request, *_args, **kwargs)[source]
class cri_api.views.SSHPublicKeyViewSet(**kwargs)[source]

Bases: cri_api.permissions.SwaggerPermissionOverrideMixin, rest_framework.viewsets.ModelViewSet

basename = None
description = None
detail = None
get_queryset()[source]

Get the list of items for this view. This must be an iterable, and may be a queryset. Defaults to using self.queryset.

This method should always be used rather than accessing self.queryset directly, as self.queryset gets evaluated only once, and those results are cached for all subsequent requests.

You may want to override this if you need to provide different querysets depending on the incoming request.

(Eg. return a list of items that is specific to the user)

get_serializer(*args, **kwargs)[source]

Return the serializer instance that should be used for validating and deserializing input, and for serializing output.

name = None
permission_classes = [<class 'cri_api.permissions.DjangoSelfObjectOrAnonReadOnly'>]
queryset
serializer_class

alias of cri_api.serializers.user.SSHPublicKeySerializer

suffix = None
swagger_permission_classes = [<class 'rest_framework.permissions.IsAuthenticatedOrReadOnly'>]
class cri_api.views.UserMailAliasViewSet(**kwargs)[source]

Bases: cri_api.views.MailAliasViewSetMixin, rest_framework.mixins.UpdateModelMixin, rest_framework.mixins.DestroyModelMixin, rest_framework.viewsets.GenericViewSet

basename = None
description = None
detail = None
model

alias of cri_models.models.criuser.CRIUser

model_lookup_field = 'username'
model_lookup_url_kwarg = 'login'
name = None
suffix = None
class cri_api.views.UserMembershipViewSet(**kwargs)[source]

Bases: rest_framework.viewsets.ModelViewSet

basename = None
description = None
detail = None
get_queryset()[source]

Get the list of items for this view. This must be an iterable, and may be a queryset. Defaults to using self.queryset.

This method should always be used rather than accessing self.queryset directly, as self.queryset gets evaluated only once, and those results are cached for all subsequent requests.

You may want to override this if you need to provide different querysets depending on the incoming request.

(Eg. return a list of items that is specific to the user)

get_serializer(*args, **kwargs)[source]

Return the serializer instance that should be used for validating and deserializing input, and for serializing output.

name = None
permission_classes = [<class 'rest_framework.permissions.DjangoModelPermissions'>]
queryset
serializer_class

alias of cri_api.serializers.user.CRIMembershipSerializer

suffix = None
class cri_api.views.UserPhotoKindViewSet(**kwargs)[source]

Bases: rest_framework.viewsets.ModelViewSet

basename = None
description = None
detail = None
name = None
permission_classes = [<class 'rest_framework.permissions.IsAdminUser'>]
queryset
serializer_class

alias of cri_api.serializers.user.CRIPhotoKindSerializer

suffix = None
class cri_api.views.UserPhotoViewSet(**kwargs)[source]

Bases: rest_framework.viewsets.ModelViewSet

basename = None
description = None
detail = None
get_queryset()[source]

Get the list of items for this view. This must be an iterable, and may be a queryset. Defaults to using self.queryset.

This method should always be used rather than accessing self.queryset directly, as self.queryset gets evaluated only once, and those results are cached for all subsequent requests.

You may want to override this if you need to provide different querysets depending on the incoming request.

(Eg. return a list of items that is specific to the user)

get_serializer(*args, **kwargs)[source]

Return the serializer instance that should be used for validating and deserializing input, and for serializing output.

name = None
permission_classes = [<class 'rest_framework.permissions.IsAdminUser'>]
queryset
serializer_class

alias of cri_api.serializers.user.CRIPhotoSerializer

suffix = None