IN
同库录入
internal · 简单直接插件表直接建在基座 centersql 库里,与基座表共用连接,管理简单,适合小型插件。
- 表建在基座库 centersql
- 共用数据库连接与事务
- 迁移脚本在库内执行
基础能力进基座、业务能力做插件——manifest 驱动安装/卸载、Provider 层隔离、同库/异库双模式。
插件代码独立目录,manifest 驱动,不污染基座代码。
插件代码全部放在独立目录 webman/plugin/{plugin_key}/,安装即拷入、卸载即移除,基座代码零改动。
插件只能调用 6 个 Provider(Account/Dict/Config/Context/Audit/Menu),无法直接访问基座内部实现,边界清晰。
一个 JSON 描述插件的全部元信息,安装器据此完成安装/卸载。
{
// 插件唯一标识
"key": "cms",
"name": "官网管理",
"version": "1.0.0",
"description": "CMS 官网内容管理插件",
// 菜单注入
"menus": [ ... ],
// 数据库模式
"db_mode": "external", // internal | external
"migrations": [ "001_init.sql" ],
// 依赖
"require": { "base": ">=2.0.0" }
}
拷贝代码、执行迁移、注入菜单(按 plugin_key)
按 plugin_key 删除菜单、清理数据、移除代码目录
版本比对、增量迁移、兼容性检查
插件表可以建在基座库,也可以建独立库,灵活选择。
插件表直接建在基座 centersql 库里,与基座表共用连接,管理简单,适合小型插件。
插件表建在独立库(如 tpcms),便于拆开维护、独立备份。异库须同步基座资料影子表。
异库 tpcms,24 表(基座机制 5 + cms 业务 15 + 影子 4),双标记 PHP 解析,后端合成预览。
同步基座资料账号映射插件配置栏目文章模板标签资料影子同步映射模板同时支持类标记与 PHP 语法解析,灵活渲染内容。
编辑时后端合成预览,所见即所得。
插件域内关联一律 _key,无物理外键,保持松耦合。
/api/cms/form/submit —— 表单提交对外唯一入口。
前台产物静态化/独立前端,不依赖 webman 运行时渲染。
插件规划文档统一放根目录 plugin_doc/cms/。