Beispiel #1
0
 def name_to_nick(cls, suffix=None):
     if not suffix:
         return get_view_name(cls, suffix).lower()
     elif suffix.lower() == 'retrieve':
         return 'get'
     else:
         return suffix.lower()
Beispiel #2
0
def get_view_name(view_cls, suffix=None):
    ''' Override Django REST framework's name for the base API class '''
    # The base API class should inherit directly from APIView. We can't use
    # issubclass() because ViewSets also inherit (indirectly) from APIView.
    try:
        if inspect.getmro(view_cls)[1] is rest_framework_views.APIView:
            return 'KoBo Api'  # awkward capitalization for consistency
    except KeyError:
        pass
    return rest_framework_views.get_view_name(view_cls, suffix)
Beispiel #3
0
def get_view_name(view_cls, suffix=None):
    ''' Override Django REST framework's name for the base API class '''
    # The base API class should inherit directly from APIView. We can't use
    # issubclass() because ViewSets also inherit (indirectly) from APIView.
    try:
        if inspect.getmro(view_cls)[1] is rest_framework_views.APIView:
            return 'KoBo Api' # awkward capitalization for consistency
    except KeyError:
        pass
    return rest_framework_views.get_view_name(view_cls, suffix)
Beispiel #4
0
    def _get_tags(self):
        """
        Get swagger operation tags for method
        Always returns at least one tag

        :return: swagger tags
        :rtype: list
        """
        tags = self.parser.get_tags() or self.introspector.parser.get_tags()
        if not tags:
            tags = [get_view_name(self.introspector.callback).lower()]

        return tags
Beispiel #5
0
def get_view_name(cls, suffix=None):
    '''
    Wrapper around REST framework get_view_name() to support get_name() method
    and view_name property on a view class.
    '''
    name = ''
    if hasattr(cls, 'get_name') and callable(cls.get_name):
        name = cls().get_name()
    elif hasattr(cls, 'view_name'):
        if callable(cls.view_name):
            name = cls.view_name()
        else:
            name = cls.view_name
    if name:
        return ('%s %s' % (name, suffix)) if suffix else name
    return views.get_view_name(cls, suffix=None)
Beispiel #6
0
    def _get_summary(self):
        """
        Get swagger operation summary for method
        Always returns value

        :return: swagger summary
        :rtype: str
        """
        summary = self.parser.get_summary()

        if not summary:
            summary = '{method} {view_name}'.format(
                method=self.method,
                view_name=get_view_name(self.introspector.callback)).replace(
                    '_', ' ').title()

        return summary
Beispiel #7
0
    def metadata(self, request):
        """
        Return a dictionary of metadata about the view.
        Used to return responses for OPTIONS requests.
        """

        # This is used by ViewSets to disambiguate instance vs list views
        view_name_suffix = getattr(self, 'suffix', None)

        # By default we can't provide any form-like information, however the
        # generic views override this implementation and add additional
        # information for POST and PUT methods, based on the serializer.
        ret = SortedDict()
        ret['name'] = get_view_name(self.__class__, view_name_suffix)
        ret['description'] = get_view_description(self.__class__)
        ret['renders'] = [renderer.media_type for renderer in self.renderer_classes]
        ret['parses'] = [parser.media_type for parser in self.parser_classes]
        ret['filters'] = OrderHistoryFilter.Meta.fields
        return ret
Beispiel #8
0
    def metadata(self, request):
        """
        Return a dictionary of metadata about the view.
        Used to return responses for OPTIONS requests.
        """

        # This is used by ViewSets to disambiguate instance vs list views
        view_name_suffix = getattr(self, 'suffix', None)

        # By default we can't provide any form-like information, however the
        # generic views override this implementation and add additional
        # information for POST and PUT methods, based on the serializer.
        ret = SortedDict()
        ret['name'] = get_view_name(self.__class__, view_name_suffix)
        ret['description'] = get_view_description(self.__class__)
        ret['renders'] = [
            renderer.media_type for renderer in self.renderer_classes
        ]
        ret['parses'] = [parser.media_type for parser in self.parser_classes]
        ret['filters'] = OrderHistoryFilter.Meta.fields
        return ret
Beispiel #9
0
def get_view_name(view_cls, suffix=None):
    name = views.get_view_name(view_cls, suffix)
    if name == 'Api Root':
        return 'Open Onderwijs API'
    name += 's'
    return name
Beispiel #10
0
def get_view_name(view_cls, suffix=None):
    name = views.get_view_name(view_cls, suffix)
    if name == 'Api Root':
        return 'Open Onderwijs API'
    name += 's'
    return name
 def get_nickname(self):
     """ Returns the APIView's nickname """
     return get_view_name(self.callback).replace(' ', '_')
Beispiel #12
0
 def get_nickname(self):
     """ Returns the APIView's nickname """
     return get_view_name(self.callback).replace(' ', '_')
 def __get_name__(self, callback):
     """
     Returns the APIView class name
     """
     return get_view_name(callback)
Beispiel #14
0
 def get_name(self, callback):
     """
     Returns the APIView class name
     """
     return get_view_name(callback)
Beispiel #15
0
 def sql_name(cls):
     name = get_view_name(cls)
     name = name.lower()
     name = name.replace(' ', '_')
     return name
Beispiel #16
0
def amara_get_view_name(view_cls, suffix=None):
    if hasattr(view_cls, 'DOC_NAME'):
        return view_cls.DOC_NAME
    return get_view_name(view_cls, suffix)
Beispiel #17
0
def get_view_name(view_cls, suffix=None):
    if hasattr(view_cls, "title"):
        return view_cls.title

    return views.get_view_name(view_cls, suffix)
Beispiel #18
0
def get_view_name(view_cls, suffix=None):
    if hasattr(view_cls, 'Meta') and hasattr(view_cls.Meta, 'name'):
        return view_cls.Meta.name
    return views.get_view_name(view_cls, suffix)
Beispiel #19
0
 def get_url(cls):
     url_name = cls.url_name
     if not url_name:
         url_name = get_view_name(cls.view_set).lower()
         url_name = '{}-list'.format(url_name)
     return reverse(url_name)
Beispiel #20
0
 def base_name(cls):
     name = get_view_name(cls)
     name = name.lower()
     name = name.replace(' ', '-')
     return name