From 86e41c4981ee708b7c852ff01b078d545465b32d Mon Sep 17 00:00:00 2001 From: yangjian Date: Sun, 31 May 2020 20:50:34 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=86=E5=8C=96api=E6=96=87=E9=9B=86?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=E5=8F=82=E6=95=B0=E5=92=8C=E6=96=87=E9=9B=86?= =?UTF-8?q?=E7=AE=A1=E7=90=86url?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app_api/views_app.py | 21 ++++++++++++++++++++- app_doc/urls.py | 2 +- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/app_api/views_app.py b/app_api/views_app.py index 9a9b832..90db8bc 100644 --- a/app_api/views_app.py +++ b/app_api/views_app.py @@ -100,6 +100,25 @@ class ProjectView(APIView): # 获取文集 def get(self,request): pro_id = request.query_params.get('id',None) + range = request.query_params.get('range',None) + # 获取自己的文集创建的、协作的文集列表 + if range == 'self': + colla_list = [i.project.id for i in ProjectCollaborator.objects.filter(user=request.user)] # 用户的协作文集列表 + project_list = Project.objects.filter( + Q(create_user=request.user) | \ + Q(id__in=colla_list) + ) + page = PageNumberPagination() # 实例化一个分页器 + page_projects = page.paginate_queryset(project_list, request, view=self) # 进行分页查询 + serializer = ProjectSerializer(page_projects, many=True) # 对分页后的结果进行序列化处理 + resp = { + 'code': 0, + 'data': serializer.data, + 'count': project_list.count() + } + return Response(resp) + + # 存在文集ID,返回指定的文集 if pro_id: resp = dict() # 获取文集信息 @@ -146,7 +165,7 @@ class ProjectView(APIView): serializer = ProjectSerializer(project) resp = {'code': 0, 'data': serializer.data} return Response(resp) - + # 否则,根据查询条件返回文集列表 else: kw = request.query_params.get('kw', '') # 搜索词 sort = request.query_params.get('sort', 0) # 排序,0表示按时间升序排序,1表示按时间降序排序,默认为0 diff --git a/app_doc/urls.py b/app_doc/urls.py index 2f5fd51..64917cc 100644 --- a/app_doc/urls.py +++ b/app_doc/urls.py @@ -9,7 +9,7 @@ urlpatterns = [ path('get_pro_doc/', views.get_pro_doc, name="get_pro_doc"), # 获取某个文集的下级文档 path('get_pro_doc_tree/', views.get_pro_doc_tree, name="get_pro_doc_tree"), # 获取某个文集的下级文档树数据 path('modify_pro/',views.modify_project,name='modify_project'), # 修改文集 - path('manage_project',views.manage_project,name="manage_project"), # 管理文集 + path('manage_project/',views.manage_project,name="manage_project"), # 管理文集 path('del_project/',views.del_project,name='del_project'), # 删除文集 path('report_project_md/',views.report_md,name='report_md'), # 导出文集MD文件 path('genera_project_file/',views.genera_project_file,name='genera_project_file'), # 个人中心生成文集文件(epub\docx\pdf等)