Beispiel #1
0
def user_avatar():
    f = request.files.get("avatar")
    if f:
        # 为了防止多个用户上传的图片名字相同,需要将用户的图片计算出一个随机的用户名,防止冲突
        file_hash = hashlib.md5()
        file_hash.update((f.filename + str(ctime())).encode("utf-8"))
        file_name = file_hash.hexdigest() + f.filename[f.filename.rfind("."):]
        avatar_url = file_name
        # 将路径改为static/upload下
        path_file_name = "./static/upload/" + file_name
        # 用新的随机的名字当做图片的名字
        f.save(path_file_name)

        # 将这个图片上传到七牛云
        qiniu_avatar_url = upload_image_to_qiniu(path_file_name, file_name)
        # 修改数据中的用户头像链接
        user_id = session.get("user_id")
        user = db.session.query(User).filter(User.id == user_id).first()
        user.avatar_url = qiniu_avatar_url
        db.session.commit()
        ret = {"errno": 0, "errmsg": "成功"}
    else:
        ret = {"errno": 4003, "errmsg": "上传传失败"}

    return jsonify(ret)
Beispiel #2
0
def user_release():
    title = request.form.get("title")
    category = request.form.get("category")
    digest = request.form.get("digest")
    content = request.form.get("content")
    f = request.files.get("index_image")
    news = News()
    news.title = title
    news.category_id = category
    news.source = "个人发布"
    news.digest = digest
    news.content = content
    news.user_id = session.get("user_id")
    news.status = 1

    if f:
        file_hash = hashlib.md5()
        file_hash.update((f.filename + str(ctime())).encode("utf-8"))
        file_name = file_hash.hexdigest() + f.filename[f.filename.rfind(".")]

        # 将路径改为static/upload下
        path_file_name = "./static/upload" + file_name

        # 用新的随机名字当作图片的名字
        f.save(path_file_name)

        # 将这个图片上传到七牛云
        qiniu_image_url = upload_image_to_qiniu(path_file_name, file_name)
        news.index_image_url = qiniu_image_url
    db.session.add(news)
    db.session.commit()
    ret = {"errno": 0, "errmsg": "发布成功"}
    return jsonify(ret)
Beispiel #3
0
def user_avatar():
    f = request.files.get("avatar")
    if f:
        # print(f.filename)
        # 为了防止多个用户上传的图片名字相同,需要将用户的图片计算出一个随机的用户名,防止冲突
        file_hash = hashlib.md5()
        file_hash.update((f.filename + time.ctime()).encode("utf-8"))
        file_name = file_hash.hexdigest() + f.filename[f.filename.rfind("."):]
        # 将路径改为static/upload下
        # path_file_name = file_name
        path_file_name = 'static/upload' + file_name
        # 用新的随机的名字当做图片的名字
        f.save(path_file_name)
        # 将这个图片上传到七牛云
        img = upload_image_to_qiniu(path_file_name, file_name)

        # 修改数据库中用户的头像链接(注意,图片时不放在数据库中的,数据库中存放的图片的名字或者路径加图片名)
        user_id = session.get("user_id")
        user = db.session.query(User).filter(User.id == user_id).first()
        user.avatar_url = img

        db.session.commit()
        ret = {"errno": 0, "errmsg": "成功", "avatar_url": img}
    else:
        ret = {"errno": 4003, "errmsg": "上传失败"}

    return jsonify(ret)