Пример #1
0
    def get_urls(self, prefix="", data=None):
        """
        Get the set of urls for this rest resource.

        /prefix/slug
        /prefix/slug/(\d+)
        """
        slug = self.__class__.__name__.lower() if not self.slug else self.slug
        detail_handler_data = {
            "resource_set": self,
            "is_detail": True
        }
        list_handler_data = {
            "resource_set": self
        }
        detail_handler_data.update(data or {})
        list_handler_data.update(data or {})
        return [
            url(
                _url_with_prefix(prefix, slug) + r"/([^/]+)$",
                self.handler, name="%s_root" % self.slug,
                kwargs=detail_handler_data),
            url(
                _url_with_prefix(prefix, slug),
                self.handler, name="%s_detail" % self.slug,
                kwargs=list_handler_data),
        ]
Пример #2
0
    def get_urls(self, prefix="", data=None):
        """
        Get the set of urls for this rest resource.

        /prefix/slug
        /prefix/slug/(\d+)
        """
        slug = self.__class__.__name__.lower() if not self.slug else self.slug
        detail_handler_data = {"resource_set": self, "is_detail": True}
        list_handler_data = {"resource_set": self}
        detail_handler_data.update(data or {})
        list_handler_data.update(data or {})
        return [
            url(_url_with_prefix(prefix, slug) + r"/([^/]+)$",
                self.handler,
                name="%s_root" % self.slug,
                kwargs=detail_handler_data),
            url(_url_with_prefix(prefix, slug),
                self.handler,
                name="%s_detail" % self.slug,
                kwargs=list_handler_data),
        ]
Пример #3
0
    def get_nested_urls(self, parent, prefix="", data=None):
        """
        Get the set of urls for this rest resource when nested.

        Note: until we need it, only supporting non-detail methods.

        /prefix/slug
        """
        slug = self.__class__.__name__.lower() if not self.slug else self.slug
        list_handler_data = {"resource_set": self}
        list_handler_data.update(data or {})
        parent_url = parent.get_urls(prefix, data)[0].regex.pattern.rstrip("$")
        return [
            url(_url_with_prefix(parent_url, slug),
                self.handler,
                name="%s_below_%s" % (self.slug, parent.slug),
                kwargs=list_handler_data),
        ]
Пример #4
0
    def get_nested_urls(self, parent, prefix="", data=None):
        """
        Get the set of urls for this rest resource when nested.

        Note: until we need it, only supporting non-detail methods.

        /prefix/slug
        """
        slug = self.__class__.__name__.lower() if not self.slug else self.slug
        list_handler_data = {
            "resource_set": self
        }
        list_handler_data.update(data or {})
        parent_url = parent.get_urls(
            prefix,
            data
        )[0].regex.pattern.rstrip("$")
        return [
            url(
                _url_with_prefix(
                    parent_url, slug),
                self.handler, name="%s_below_%s" % (self.slug, parent.slug),
                kwargs=list_handler_data),
        ]