潭州课堂25班:Ph201805201 django 项目 第四十课 后台 文章发布,更新实现,热门新闻管理,轮播图管理(课堂笔记)
把图片上传到 七牛云,必须经过后台的许可,
在虚拟机中安装七牛云所需模块
pip install qiniu
# 创建utils/secrets/qiniu_secret_info.py文件
# 从七牛云"个人中心>密钥管理"中获取自己的 Access Key 和 Secret Key
QI_NIU_ACCESS_KEY = '你自己七牛云上的AK'
QI_NIU_SECRET_KEY = '你自己七牛云上的SK'
QI_NIU_BUCKET_NAME = '你自己在七牛云上创建的存储空间名'
在视图中
# 将图片上传到七牛云,需要后端返回token
import qiniu
from utils.secrets import qiniu_secret_info
class QiniuyunToken(PermissionRequiredMixin, View): """ 将图片上传到七牛云,需要后端返回token """ permission_required = ('news.add_news', 'news.view_news') def handle_no_permission(self): # 处理没有权限 重写 PermissionRequiredMixin 中的 没有权限 方法 return to_json_data(errno=Code.ROLEERR, errmsg='没有权限') def get(self, request): ak = qiniu_secret_info.QI_NIU_ACCESS_KEY sk = qiniu_secret_info.QI_NIU_SECRET_KEY bucket_name = qiniu_secret_info.QI_NIU_BUCKET_NAME # 构建鉴权对象 q = qiniu.Auth(ak, sk) token = q.upload_token(bucket_name) return JsonResponse({"uptoken": token})
定义 url ;
path('token/', views.QiniuyunToken.as_view(), name='upload_token'), # 七牛云上传图片需要调用token
热门新闻管理;