# 获取所有 tasks 名称url(r'^tasks_as_choices/', TasksAsChoices.as_view())这个接口的返回值没有数据,怎么处理?

发布于 2022-05-05 10:12:17

在使用celery创建异步任务的时候,有一个需求是获取现在项目中所有的task名称,看了代码中有写好的接口,但是返回值没有数据,这个要怎么修复?
前端请求:

// 获取所有 tasks 名称
SyncDataApi.TasksAsChoices().then((response) => {
  this.tasks_as_choices = response.data || [];
});

// 获取所有 tasks 名称
export function TasksAsChoices(params) {
  return request({
    url: `${sync_data_prefix}/tasks_as_choices/`,
    method: "get",
    params
  });
}

接口路由url:

获取所有 tasks 名称
url(r'^tasks_as_choices/', TasksAsChoices.as_view()),

API视图:

class TasksAsChoices(APIView):
def get(self, request):
    """
    获取所有 tasks 名称
    :param request:
    :return:
    """
    lis = []

    def get_data(datas):
        for item in datas:
            if isinstance(item, (str, int)) and item:
                lis.append(item)
            else:
                get_data(item)
    get_data(TaskSelectWidget().tasks_as_choices())
    return SuccessResponse(list(set(lis)))
    
    

返回结果:

    {"code":200,"data":[],"msg":"success","status":"success"}

查看更多

关注者
0
被浏览
541
1 个回答
liqiang
liqiang python/vue 2022-05-06
这家伙很懒,什么也没写!

是v1.0 版本的吗

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友

手机
浏览

扫码手机浏览