python - 如何在 Django 中创建一个支持用户可安装的第三方插件集成的架构
问题描述
如何在 Django 中创建一个支持用户可安装的第三方插件集成的架构
问题:我们需要创建一个 Django 项目,使第三方开发人员能够开发插件。Django 应用程序现在只是充当一个 RestAPI/socket 服务器,并且在前端有一个反应应用程序。我们当然需要为 UI 部分创建一些前端钩子,以使插件难以处理。
其他问题:
- 我们希望通过某种安装过程自己托管插件,例如复制文件或运行某种类型的设置等。
- 我们不希望插件直接访问数据库
- 我们希望插件是一个事件驱动的代码,例如:如果发生,那么部分代码将运行
- 我们希望插件将自己的数据保存在我们的数据库中
- 我们希望插件在我们的系统上是安全的,这样他们就不能访问我们的系统文件
——我们不希望插件执行减慢我们当前的进程,如果可能的话它应该在后台运行。
我们的堆栈:
- Django(在 django-channels 上有一些部分)
- React(A PWA)
- 带有 Redis 的 Celery
我们的经验:我们是对 Django 和 React 经验很少或有一些经验的学生。
解决方案
推荐阅读
- arrays - 如何使用 mongodb 驱动程序为 nodejs 进行多选项查询?
- php - 按 assoc 数组上的重复值对 assoc 数组进行排序
- html - 如何使 HTML 中的部分高度相同?
- python - 从缺少'_ctypes'的源代码构建Python3.7.3
- java - JnativeHook 在 MacOS 上创建冻结问题
- kubernetes - 将 master 添加到 Kubernetes 集群:集群没有稳定的 controlPlaneEndpoint 地址
- javascript - 拆分正则表达式数字
- ssl - 使用代理时证书被拒绝
- c - 在C中查找连续整数的问题
- laravel - 我在浏览器端需要什么 URI 才能从 heroku 的 redis 插件连接到亚马逊 redis 服务器