Пример #1
0
def auction_item_image_add(request, item_id):
    """
    创建图片 待处理
    :param request:
    :param item_id:
    :return:
    """
    show_list = request.POST.getlist('show')
    image_object_list = request.FILES.getlist('img')

    orm_object_list = []
    for index in range(len(image_object_list)):
        image_object = image_object_list[index]
        if not image_object:
            continue
        ext = image_object.name.rsplit('.', maxsplit=1)[-1]
        file_name = "{0}.{1}".format(str(uuid.uuid4()), ext)
        cos_path = upload_file(image_object, file_name)
        print(cos_path)
        orm_object_list.append(
            models.CommodityDetails(image_url=cos_path,
                                    commodity_id=item_id,
                                    status=bool(show_list[index])))
    if orm_object_list:
        models.CommodityDetails.objects.bulk_create(orm_object_list)
    return JsonResponse({'status': True})
Пример #2
0
def wiki_upload_img(request, project_id):
    """wiki图片上传"""
    context = {
        # 上传成功success为1,url为上传成功后的返回链接,用于图片显示,message用于提示
        "success": 0,
        "message": None,
        "url": None
    }
    # 图片内容
    image_obj = request.FILES.get('editormd-image-file')

    if not image_obj:
        context['message'] = '文件不存在'
        return JsonResponse(context)

    # 图片名称
    file_end = image_obj.name.rsplit('.')[-1]
    key = '{}.{}'.format(file_uid(request.tracer.user.mobile_phone), file_end)

    # 上传图片
    context['url'] = upload_file(bucket=request.tracer.project.bucket,
                                 key=key,
                                 image_obj=image_obj,
                                 region=request.tracer.project.region)

    # 返回数据
    context['success'] = 1

    return JsonResponse(context)
Пример #3
0
def wiki_upload(request, project_id):
    """ markdown插件上传图片 """

    # markdown上传文件到我后台,后台上传至对象存储,返回成功信息和图片URL给Markdown
    # markdown给我们展示出来

    result = { # g给markdown返回的信息,success=0表示失败
        'success': 0,
        'message': None,
        'url': None
    }
    # 上传的文件统一的key为editormd-image-file,valuel为文件对象
    image_object = request.FILES.get('editormd-image-file')
    if not image_object:
        result['message'] = "文件不存在"
        return JsonResponse(result)

    # 给图片设置一个不重复的名字
    ext = image_object.name.rsplit('.')[-1] # 获取图片后缀
    key = "{}.{}".format(uid(request.tracer.user.mobile_phone), ext)
    # 上传至对象存储后返回url:image_url
    image_url = upload_file(
        request.tracer.project.bucket,
        request.tracer.project.region,
        image_object,
        key
    )
    result['success'] = 1
    result['url'] = image_url
    # 给markdown返回
    return JsonResponse(result)
Пример #4
0
def wiki_upload(request, project_id):
	""" markdown插件上传图片 """
	# markdown需要的返回值 判断上传是否成功
	result = {
		'success': 0,
		'message': None,
		'url': None
	}

	image_object = request.FILES.get('editormd-image-file')
	if not image_object:
		result['message'] = "文件不存在"
		return JsonResponse(result)

	ext = image_object.name.rsplit('.')[-1]
	key = "{}.{}".format(uid(request.tracer.user.phone), ext)
	image_url = upload_file(
		request.tracer.project.bucket,
		request.tracer.project.region,
		image_object,
		key
	)
	result['success'] = 1
	result['url'] = image_url
	return JsonResponse(result)
Пример #5
0
def wiki_upload(request, project_id):
    """
    markdown插件上传图片
    """
    result = {
        'success': 0,
        'message': None,
        'url': None,
    }

    image_object = request.FILES.get('editormd-image-files')
    if not image_object:
        result['message'] = "文件不存在"
        return JsonResponse(result)

    ext = image_object.name.rsplit('.')[-1]  # 获取文件后缀名
    key = "{}.{}".format(uid(request.tracer.user.mobile_phone), ext)

    # 文件对象上传到当前项目的桶中
    image_url = upload_file(
        bucket=request.tracer.project.bucket,
        region=request.tracer.project.region,
        file_object=image_object,
        key=key,
    )
    print(image_url)

    result = {
        'success': 1,
        'message': None,
        'url': image_url,
    }
    print(result)
    print(JsonResponse(result))
    return JsonResponse(result)
Пример #6
0
def wiki_upload(request, project_id):
    '''Wiki的文章中的图片'''

    # markdown上传文件需要的返回值类型
    result = {
        'success': 0,  # 0代表失败; 1代表成功
        'message': None,
        'url': None,
    }

    # 获取markdown上传的文件对象
    image_object = request.FILES.get('editormd-image-file')
    if not image_object:
        result['message'] = '文件不存在'
        return JsonResponse(result)

    # 创建上传之后的文件名,由于腾讯云上传相同的文件名会覆盖原来文件,所以尽量保持文件名唯一
    ext = image_object.name.rsplit('.')[-1]  # 上传的文件后缀名
    # uid是自定义的生成随机字符串的函数,  key是新的文件名
    key = '{}.{}'.format(uid(request.tracer.user.mobile_phone), ext)

    # 获取项目的桶名称
    bucket_name = request.tracer.project.bucket
    region = request.tracer.project.region

    # 上传到腾讯云cos桶中
    image_url = upload_file(bucket_name, region, image_object, key)

    result['success'] = 1
    result['url'] = image_url
    result['message'] = '上传成功'

    return JsonResponse(result)
Пример #7
0
 def clean(self):
     cleaned_data = self.cleaned_data
     # 上传文件
     cover_file_object = cleaned_data.get('cover')
     if not cover_file_object or isinstance(cover_file_object, FieldFile):
         return cleaned_data
     ext = cover_file_object.name.rsplit('.', maxsplit=1)[-1]
     file_name = "{0}.{1}".format(str(uuid.uuid4()), ext)
     cleaned_data['cover'] = upload_file(cover_file_object, file_name)
     return cleaned_data
    def clean(self):
        # 获取用户提交的文件对象

        cleaned_data = self.cleaned_data

        obj = cleaned_data.get("image_url")
        if not obj:
            return cleaned_data

        # 将对象上传到腾讯云
        # 返回得到文件地址
        ext = obj.name.rsplit('.', maxsplit=1)[-1]

        file_name = "{0}.{1}".format(str(uuid.uuid4()), ext)
        cleaned_data['image_url'] = upload_file(obj, file_name)
        return cleaned_data
Пример #9
0
def wiki_upload(request, project_id):
    result = {'success': 0, 'message': None, 'url': None}
    #print(request.FILES)
    #<MultiValueDict: {'editormd-image-file': [<InMemoryUploadedFile: x战警二.jpeg (image/jpeg)>]}>
    image_obj = request.FILES.get('editormd-image-file')
    if not image_obj:
        result['message'] = "文件不存在"
        return JsonResponse(result)
    # key文件名 ext文件后缀名
    ext = image_obj.name.rsplit('.')[-1]
    key = "{}.{}".format(uid(request.userInfo.user.telephone), ext)
    image_url = upload_file(request.userInfo.project.bucket,
                            request.userInfo.project.region, image_obj, key)
    print(image_url)
    result['success'] = 1
    result['url'] = image_url
    return JsonResponse(result)
Пример #10
0
def wiki_upload(request, project_id):
    '''markdown插件上传图片'''
    result = {'success': 0, 'message': None, 'url': None}

    image_object = request.FILES.get('editormd-image-file')
    if not image_object:
        result['message'] = '文件不存在'
        return JsonResponse(result)
    # 将文件对象上传到项目桶中
    ext = image_object.name.split('.')[-1]
    key = '{}.{}'.format(uid(request.saas.user.phone), ext)
    image_url = upload_file(request.saas.project.bucket,
                            request.saas.project.region, image_object, key)

    result['success'] = 1
    result['url'] = image_url
    return JsonResponse(result)
Пример #11
0
def wiki_upload(request, project_id):
    print('收到图片')
    result = {'success': 0, 'message': None, 'url': None}
    image_object = request.FILES.get('editormd-image-file')
    if not image_object:
        result['message'] = '文件不存在'
        return JsonResponse(result)
    ext = image_object.name.rsplit('.')[-1]
    key = "{}.{}".format(uid(request.blog.user.mobile_phone), ext)
    image_url = upload_file(
        bucket=request.blog.project.bucket,
        region=request.blog.project.region,
        file_object=image_object,
        key=key,
    )
    result['success'] = 1
    result['url'] = image_url
    return JsonResponse(result)
Пример #12
0
 def post(self, request, project_id):
     result = {
         'success': 0,
         'massage': None,
         'url': None,
     }
     # 1.获取上传得文件对象
     files_object = request._request.FILES.get('editormd-image-file')
     if not files_object:
         result['massage'] = "文件不存在"
         return JsonResponse(result)
     #调用上传文件函数
     image_url = upload_file(request, files_object)
     result = {
         'success': 1,
         'massage': None,
         'url': image_url,
     }
     return JsonResponse(result)
Пример #13
0
def wiki_upload(request, project_id):
    """markdown插件上传图片"""
    result = {"success": 0, "message": None, "url": None}
    # 用户上传的图片对象
    image_object = request.FILES.get("editormd-image-file")
    if not image_object:
        result["message"] = "文件不存在"
        return JsonResponse(result)
    # 上传到cos中的文件名不能重复,如果重复最新的会覆盖就文件,所有这里需要生成唯一数的文件名
    ext = image_object.name.rsplit(".")[-1]  # 获取上传文件后缀名
    key = "{0}.{1}".format(uid(request.tracer.user.mobile_phone), ext)
    image_url = upload_file(
        bucket=request.tracer.project.bucket,  # 文件对象上传到当前项目的桶中
        region=request.tracer.project.region,
        file_object=image_object,
        key=key)
    result["success"] = 1
    result["url"] = image_url
    return JsonResponse(result)
Пример #14
0
def wiki_upload(request, project_id):
    """ markdown插件上传图片 """
    result = {"success": 0, "message": None, "url": None}

    image_object = request.FILES.get("editormd-image-file")
    if not image_object:
        result["message"] = "文件不存在"
        return JsonResponse(result)

    ext = image_object.name.rsplit(".")[-1]
    key = "{}.{}".format(uid(request.tracker.user.mobile_phone), ext)
    image_url = upload_file(
        request.tracker.project.bucket,
        request.tracker.project.region,
        image_object,
        key,
    )
    result["success"] = 1
    result["url"] = image_url
    return JsonResponse(result)
Пример #15
0
def wiki_upload(request, project_id):
    result = {
        'success': 0,
        'message': None,
        'url': None
    }
    img_obj = request.FILES.get('editormd-image-file')
    if not img_obj:
        result['message'] = '文件不存在'
        return JsonResponse(result)
    ext = img_obj.name.rsplit('.')[-1]
    key = '{}.{}'.format(uid(request.auth.user.phone_num), ext)
    img_url = upload_file(
        request.auth.project.bucket,
        request.auth.project.region,
        img_obj,
        key
    )
    result['success'] = 1
    result['url'] = img_url
    return JsonResponse(result)
Пример #16
0
def upload(request, project_id):
    result = {
        'success': 0,
        'message': None,
        'url': None
    }
    img_obj = request.FILES.get('editormd-image-file')
    if not img_obj:
        result['message'] = '文件不存在'
        return JsonResponse(result)
    # 文件的对象上传到桶
    bucket = request.tracer.project.bucket

    body = img_obj
    ext = img_obj.name.rsplit('.')[-1]
    filename = '%s.%s' % (uid(request.tracer.user.mobile_phone), ext)

    url = upload_file(bucket, body, filename)
    result['success'] = 1
    result['url'] = url

    return JsonResponse(result)
Пример #17
0
def wiki_upload(request, project_id):
    """
    markdown上传图片
    :param request:
    :return:
    """
    result = {
        'success': 0,
        'message': None,
        'url': None,
    }
    image_object = request.FILES.get('editormd-image-file')
    if not image_object:
        result['message'] = '文件不存在'
        return JsonResponse(result)
    ext = image_object.name.rsplit('.')[-1]
    key = '{}.{}'.format(uid(request.tracer.user.mobile_phone), ext)
    image_url = upload_file(request.tracer.project.bucket,
                            request.tracer.project.region, image_object, key)
    # markdown固定格式
    result['success'] = 1
    result['url'] = image_url
    return JsonResponse(result)
Пример #18
0
def wiki_upload(request, project_id):
    """
    markdown 本地上传
    :param request:
    :param project_id:
    :return:
    """
    result = {
        'success': 0,
        'message': None,
        'url': None
    }

    print('收到上传的图片了')
    print(request.FILES)

    # 文件对象上传到当前项目的桶中
    image_object = request.FILES.get('editormd-image-file')
    if not image_object:
        result['message'] = "文件不存在"
        return JsonResponse(result)

    ext = image_object.name.rsplit('.')[-1]
    key = "{}.{}".format(uid(request.tracer.user.mobile_phone),ext)
    image_url = upload_file(
        request.tracer.project.bucket,
        request.tracer.project.region,
        image_object,
        key
    )
    print(image_url)

    # return JsonResponse({})
    result['success'] = 1
    result['url'] = image_url
    #
    return JsonResponse(result)
Пример #19
0
def wiki_upload(request, project_id):
    """markdown插件上传图片"""
    file_project = request.FILES.get('editormd-image-file')
    if not file_project:
        result = {
            'success': 0,  # 0 表示上传失败,1 表示上传成功
            'message': "上传失败",
            'url': None
        }
        return JsonResponse(result)
    ext = file_project.name.rsplit('.')[-1]  # 拿到后缀名
    key = "{}-{}".format(uid(request.bug_mgt.user.mobile_phone), ext)
    # project_obj = models.Project.objects.filter(id=project_id).first() 或 request.bug_mgt.project.bucket
    bucket = request.bug_mgt.project.bucket
    region = request.bug_mgt.project.region
    file_url = cos.upload_file(bucket, file_project, region, key)
    print(file_url)
    result = {
        'success': 1,  # 0 表示上传失败,1 表示上传成功
        'message': "上传成功",
        'url': file_url  # 上传成功时才返回
    }
    # 返回一个路径
    return JsonResponse(result)
Пример #20
0
def wiki_upload(request, project_id):
    """MarkDown上传图片"""
    result = {
        'success': 0,
        'message': None,
        'url': None,
    }
    image_object = request.FILES.get('editormd-image-file')
    if not image_object:
        result['message'] = '文件不存在'
        return JsonResponse(result)
    suffix_name = image_object.name.rsplit('.')[-1]
    img_cos_name = '{}.{}'.format(uid(request.lxyker.user.mobile_phone),
                                  suffix_name)

    image_url = upload_file(
        bucket=request.lxyker.project.bucket,
        region=request.lxyker.project.region,
        file_obj=image_object,
        key=img_cos_name,
    )
    result['success'] = 1
    result['url'] = image_url
    return JsonResponse(result)