mixins.py 文件源码

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

项目:LIMS-Backend 作者: LeafLIMS 项目源码 文件源码
def history(self, request, pk=None):
        instance = self.get_object()
        user = request.query_params.get('user', None)  # Default to all users
        start = request.query_params.get('start', None)  # In YYYY-MM-DD format
        if start:
            start = datetime.datetime.strptime(start, '%Y-%m-%d')
        else:
            start = datetime.datetime.min
        start = timezone.make_aware(start, timezone.get_default_timezone())
        end = request.query_params.get('end', None)  # In YYYY-MM-DD format
        if end:
            end = datetime.datetime.strptime(start, '%Y-%m-%d')
        else:
            end = datetime.datetime.today()
        end = timezone.make_aware(end, timezone.get_default_timezone())
        history = []
        for v, version in enumerate(Version.objects.get_for_object(instance).reverse()):
            if (user is not None and version.revision.user.username != user) \
                    or version.revision.date_created < start \
                    or version.revision.date_created > end:
                continue
            history.append({'version': v,
                            'created': version.revision.date_created.strftime('%Y-%m-%d %H:%M:%S'),
                            'user': version.revision.user.username,
                            'data': version.field_dict})
        return Response(history, status=200)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号