加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
views.py 1.72 KB
一键复制 编辑 原始数据 按行查看 历史
dvadmin 提交于 2021-08-21 14:03 . 新功能: 插件市场后端完成
from dvadmin.utils.json_response import SuccessResponse, ErrorResponse
from dvadmin.utils.viewset import CustomModelViewSet
from plugins import get_all_plugins, install_update_plugins, delete_plugins
class PluginsMarketViewSet(CustomModelViewSet):
"""
插件市场接口
list:查询
create:新增
update:修改
retrieve:单例
destroy:删除
"""
def list(self, request, *args, **kwargs):
return SuccessResponse(data=get_all_plugins(), msg="获取成功")
def create(self, request, *args, **kwargs):
plugins_name = request.data.get('plugins_name', None)
data = request.data.get('data', None)
status, msg = install_update_plugins(plugins_name, data)
return SuccessResponse(data=[], msg="安装成功") if status else ErrorResponse(data=[], msg=f"安装失败,{msg}")
def update(self, request, *args, **kwargs):
plugins_name = request.data.get('plugins_name', None)
update_type = request.data.get('updateType', None)
data = request.data.get('data', None)
status, msg = install_update_plugins(plugins_name, data)
success_msg = "更新"
if update_type == 'enabled':
success_msg = "启用" if data.get('enabled') else "禁用"
return SuccessResponse(data=[], msg=f"{success_msg}成功") if status else ErrorResponse(data=[],
msg=f"{success_msg}失败,{msg}")
def delete(self, request, *args, **kwargs):
status, msg = delete_plugins(request.data.get('plugins_name', None))
return SuccessResponse(data=[], msg="卸载成功") if status else ErrorResponse(data=[], msg=f"卸载失败,{msg}")
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化