jsonapi.py 文件源码

python
阅读 16 收藏 0 点赞 0 评论 0

项目:pinax-api 作者: pinax 项目源码 文件源码
def get_serializable_data(self, request=None):
        if isinstance(self.data, abc.Iterable):
            ret = []
            data = self.data
            if request is not None:
                per_page, page_number = self.get_pagination_values(request)
                paginator = Paginator(data, per_page)
                self._current_page = data = paginator.page(page_number)

                # Obtain pagination meta-data
                paginator = dict(paginator=dict(
                    count=paginator.count,
                    num_pages=paginator.num_pages
                ))
                self.meta.update(paginator)

            for x in data:
                ret.append(x.serializable(
                    links=self.links,
                    linkage=self.linkage,
                    included=self.included,
                    request=request,
                ))
            return ret
        elif isinstance(self.data, Resource):
            return self.data.serializable(
                links=self.links,
                linkage=self.linkage,
                included=self.included,
                request=request,
            )
        else:
            return self.data
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号