BadouCMS 表结构说明(框架表 + CMS 表)
适用范围:本文只覆盖 框架表(19 张) 和 CMS 表(16 张),以及 CMS 动态生成的 DIY 表。
不包含插件/模块表(shop_*、ai_*、inquiry_*、vip_*、geo、seo、spiderlog_*等)。每张表独立成段,包含:用途 / 核心字段 / 关联关系 / 典型使用场景。
生成时间:2026-09-18
全局约定
| 编码 | 含义 | 定义位置 |
|---|---|---|
acode | 区域/语言编码,多站点隔离键,默认 cn | bd_cms_area.acode |
scode | 栏目编码 | bd_cms_content_sort.scode |
mcode | 内容模型编码 | bd_cms_model.mcode |
fcode | 表单编码 | bd_cms_form.fcode |
gcode | 会员等级编码 | bd_user_level.gcode |
gid / gtype / gnote | 分组 / 分组类型 / 分组备注 | 各表内字段 |
aucode | 语言关联码,用于同一内容的多语言版本关联 | bd_cms_content.aucode |
时间字段风格:CMS 表用 datetime(如 create_time),框架/用户/配置表用 bigint 时间戳(秒)。两套并存。
缓存约定:CMS 数据统一打 cms_cache 标签,框架配置打 sys_config 标签,后台菜单缓存键 __menu__。
一、框架表(19 张)
1. bd_admin — 后台管理员表
用途:存储后台管理员账号、登录状态与基础资料。
核心字段
| 字段 | 说明 |
|---|---|
id | 管理员 ID |
username | 登录名(唯一) |
nickname | 昵称(后台显示、内容 create_user 存的值) |
password | 密码哈希 |
email / mobile | 邮箱 / 手机 |
avatar | 头像 |
loginfailure | 连续登录失败次数 |
login_time / login_ip | 最后登录时间(bigint)/ IP |
token | 登录会话标识,改用户名或密码时清空强制重登 |
status | 状态(normal 等) |
create_time / update_time | 创建 / 更新时间(bigint) |
关联关系
bd_admin_group_access.uid→bd_admin.id(多对多挂角色)bd_admin_log.admin_id→bd_admin.idbd_admin_group.rules中的节点 ID →bd_admin_rule.id
典型使用场景
- 后台登录认证(
AdminAuth)。 - 分配角色:通过
bd_admin_group_access关联多个bd_admin_group。 - 操作日志记录操作人。
2. bd_admin_group — 后台权限组/角色表
用途:定义后台角色及其拥有的权限节点集合。
核心字段
| 字段 | 说明 |
|---|---|
id | 角色 ID |
pid | 父组 ID(支持角色层级) |
name | 角色名称 |
rules | 权限规则 ID 列表(逗号分隔,对应 bd_admin_rule.id) |
status | 状态 |
create_time / update_time | 时间(bigint) |
关联关系
rules→bd_admin_rule.id- 被
bd_admin_group_access.group_id引用
典型使用场景
- 后台角色管理(超管、编辑、运营)。
- 登录后聚合该组
rules计算菜单与按钮权限。
3. bd_admin_group_access — 管理员-角色关联表
用途:管理员与权限组的多对多关系表。
核心字段
| 字段 | 说明 |
|---|---|
uid | 管理员 ID |
group_id | 角色 ID |
uid + group_id | 联合唯一索引 |
关联关系
uid→bd_admin.idgroup_id→bd_admin_group.id
典型使用场景
- 给管理员分配一个或多个角色。
- 权限校验时按
uid反查所有group_id。
4. bd_admin_rule — 后台菜单/权限节点表
用途:后台菜单树与权限节点的统一定义表。
核心字段
| 字段 | 说明 |
|---|---|
id | 节点 ID |
type | 0=菜单目录,1=菜单项,2=按钮 |
pid | 父节点 ID(树形自关联) |
name | 权限标识(唯一,如 cms.content/index) |
title | 显示名称 |
icon | 图标 |
url | 路由地址 |
condition | 显示条件 |
ismenu / is_quick | 是否菜单 / 是否快捷菜单 |
menutype | _iframe / _blank |
extend | 扩展属性 |
py / pinyin | 拼音检索 |
weigh | 排序权重 |
status | 状态 |
关联关系
pid自关联形成菜单树- 被
bd_admin_group.rules引用 Adminlog::record()通过name反查title作为日志标题
典型使用场景
- 后台左侧菜单渲染(缓存
__menu__)。 - 按钮级权限校验。
- 菜单/节点的增删改(菜单管理页)。
5. bd_admin_log — 后台操作日志表
用途:记录后台管理员的写操作,供审计追溯。
核心字段
| 字段 | 说明 |
|---|---|
id | 日志 ID |
admin_id | 操作人 ID |
username | 操作人用户名 |
url | 请求 URL(截断 1500) |
title | 日志标题(自动由菜单名生成) |
data | 请求数据(JSON,已对 password/salt/token 脱敏) |
ip | 客户端 IP |
useragent | User-Agent |
create_time | 操作时间 |
关联关系
admin_id→bd_admin.id
典型使用场景
- 后台增删改自动写日志(
Adminlog::record())。 - 审计谁在何时改了什么。
6. bd_user — 会员表
用途:前台会员账号、资料、余额积分与登录信息。
核心字段
| 字段 | 说明 |
|---|---|
id | 会员 ID |
group_id | 会员组 ID |
username / nickname / password | 登录名 / 昵称 / 密码哈希 |
email / mobile / avatar | 邮箱 / 手机 / 头像 |
level | 会员等级(对应 bd_user_level.gcode) |
vip | VIP 等级 |
gender / birthday / bio | 性别 / 生日 / 格言 |
money | 余额(decimal) |
score | 积分 |
successions / maxsuccessions | 连续 / 最大连续登录天数 |
prevtime / logintime / loginip | 上次登录 / 登录时间 / 登录 IP |
loginfailure / loginfailuretime | 失败次数 / 最后失败时间 |
joinip / jointime | 注册 IP / 时间 |
token | 登录令牌 |
status | 状态 |
verification | 邮箱/手机验证状态(JSON) |
关联关系
group_id→bd_user_group.idlevel→bd_user_level.gcode- 被
bd_cms_member_comment.uid/puid、bd_user_money_log.user_id、bd_user_score_log.user_id、bd_token.user_id引用
典型使用场景
- 前台注册 / 登录 / 个人中心。
- 余额、积分变更(
User::money()/User::score())。 - 积分升级等级(
nextlevel())。 - 评论时作为评论人 / 被回复人。
7. bd_user_group — 会员组表
用途:定义前台会员分组及其功能权限。
核心字段
| 字段 | 说明 |
|---|---|
id | 组 ID |
name | 组名 |
rules | 权限节点 ID 列表 |
status | normal / hidden |
create_time / update_time | 时间(bigint) |
关联关系
- 被
bd_user.group_id引用 rules→bd_user_rule.id
典型使用场景
- 前台会员分级(普通、VIP、企业)。
- 控制不同组可访问的前台功能。
8. bd_user_level — 会员等级表
用途:按积分区间划分会员等级。
核心字段
| 字段 | 说明 |
|---|---|
id | 主键 |
gcode | 等级编码(唯一) |
gname | 等级名称 |
description | 描述 |
status | 状态 |
lscore / uscore | 积分下限 / 上限 |
create_time / update_time | 时间 |
关联关系
- 被
bd_user.level引用(level数值 =gcode)
典型使用场景
- 积分变动后自动计算等级(
User::score()→nextlevel())。 - 等级权益展示。
9. bd_user_rule — 会员权限规则表
用途:前台会员功能权限节点定义(树形)。
核心字段
| 字段 | 说明 |
|---|---|
id | 节点 ID |
pid | 父节点 ID |
name | 权限标识 |
title | 名称 |
remark | 备注 |
ismenu | 是否菜单 |
weigh | 权重 |
status | normal / hidden |
create_time / update_time | 时间 |
关联关系
pid自关联成树- 被
bd_user_group.rules引用
典型使用场景
- 会员组权限勾选(
UserRule::getTreeList())。 - 前台功能鉴权。
10. bd_user_money_log — 会员余额变动流水表
用途:记录每一次会员余额的增减,可追溯。
核心字段
| 字段 | 说明 |
|---|---|
id | 流水 ID |
user_id | 会员 ID |
money | 变更金额(可负) |
before / after | 变更前 / 后余额 |
memo | 备注(如"管理员变更金额") |
createtime | 时间(bigint) |
关联关系
user_id→bd_user.id
典型使用场景
- 后台改余额、前台消费/充值。
- 财务对账与流水查询。
11. bd_user_score_log — 会员积分变动流水表
用途:记录每一次会员积分的增减。
核心字段
| 字段 | 说明 |
|---|---|
id | 流水 ID |
user_id | 会员 ID |
score | 变更积分(可负) |
before / after | 变更前 / 后积分 |
memo | 备注 |
createtime | 时间(bigint) |
关联关系
user_id→bd_user.id
典型使用场景
- 签到、消费、后台调整积分。
- 积分明细查询。
12. bd_user_field — 会员自定义字段表(历史遗留)
用途:早期用于定义会员扩展字段。
核心字段
| 字段 | 说明 |
|---|---|
id | 主键 |
name | 字段名 |
length | 长度 |
required | 是否必填 |
description | 描述 |
sorting | 排序 |
status | 状态 |
create_user / update_user / create_time / update_time | 审计字段 |
关联关系
- 当前代码库中无任何引用
典型使用场景
- 历史遗留表,现版本会员扩展字段已改为固定列,保留仅为兼容。
13. bd_config — 系统配置表
用途:全站系统参数的结构化配置(key/value + 表单元信息)。
核心字段
| 字段 | 说明 |
|---|---|
id | 配置 ID |
name | 变量名(唯一) |
group | 分组(用于后台 Tab 归类) |
title / tip | 变量标题 / 说明 |
type | 输入组件类型(string/textarea/editor/file/files/image/images/datetime/checkbox/radio/switch/select 等) |
value | 变量值(longtext) |
content | 字典数据(单选/多选/下拉选项,JSON) |
rule | 验证规则 |
extend | 扩展属性 |
allow_del | 是否允许删除 |
weigh | 排序权重 |
关联关系
- 逻辑上驱动后台"系统配置"表单
- 缓存标签
sys_config - 无外键
典型使用场景
- 站点基础设置、上传、邮件、短信、AI 等全局参数。
- 读取:
get_sys_config();写入:Config::setSysConfig()。
14. bd_attachment — 附件表
用途:记录上传的文件/图片及其元信息,统一附件管理。
核心字段
| 字段 | 说明 |
|---|---|
id | 附件 ID |
category | 类别(空视为 unclassed) |
admin_id / user_id | 上传的后台管理员 / 会员 |
url | 文件路径 |
imagewidth / imageheight / imagetype / imageframes | 图片尺寸 / 类型 / 帧数 |
filename | 原始文件名 |
filesize | 文件大小 |
mimetype | MIME 类型 |
extparam | 透传参数 |
storage | 存储位置(local 或云存储标识) |
sha1 | 文件 SHA1 |
create_time / update_time / upload_time | 时间 |
关联关系
admin_id/user_id弱关联操作人url被内容、封面、轮播等字段以字符串引用
典型使用场景
- 后台附件管理、选择图片。
- 云存储缩略图样式(
thumb_style依赖storage配置)。
15. bd_token — 用户 Token 表
用途:持久化前台/API 登录令牌,支持校验与过期。
核心字段
| 字段 | 说明 |
|---|---|
token | 令牌(主键) |
type | 令牌类型 |
user_id | 会员 ID |
create_time / expire_time | 创建 / 过期时间(bigint) |
关联关系
user_id→bd_user.id
典型使用场景
- 前台登录态保持、API 鉴权、Token 过期清理。
16. bd_ems — 邮箱验证码表
用途:存储邮箱验证码发送记录,用于校验。
核心字段
| 字段 | 说明 |
|---|---|
id | 主键 |
event | 事件(注册、找回密码等) |
email | 目标邮箱 |
code | 验证码 |
times | 已校验次数 |
ip | 请求 IP |
create_time | 时间(bigint) |
关联关系
- 无外键
典型使用场景
- 发送 / 校验邮箱验证码,限制次数与频率。
17. bd_sms — 短信验证码表
用途:存储短信验证码发送记录,用于校验。
核心字段
| 字段 | 说明 |
|---|---|
id | 主键 |
event | 事件 |
mobile | 目标手机号 |
code | 验证码 |
times | 已校验次数 |
ip | 请求 IP |
create_time | 时间(bigint) |
关联关系
- 无外键
典型使用场景
- 短信验证码发送与校验(注册、登录、改绑)。
18. bd_migrations — 数据库迁移记录表
用途:Phinx 迁移框架的版本记录表,标记已执行的迁移。
核心字段
| 字段 | 说明 |
|---|---|
version | 迁移版本号(主键) |
migration_name | 迁移名称 |
start_time / end_time | 开始 / 结束时间 |
breakpoint | 是否中断点 |
关联关系
- 无外键
典型使用场景
- 模块安装/升级时记录并跳过已执行的迁移。
19. bd_area — 省市区地区表(历史遗留)
用途:内置的省 / 市 / 区三级地区基础数据。
核心字段
| 字段 | 说明 |
|---|---|
id | 地区 ID |
pid | 父级 ID |
shortname / name / mergename | 简称 / 名称 / 全称 |
level | 层级(1 省 / 2 市 / 3 区县) |
pinyin / first | 拼音 / 首字母 |
code / zip | 区号 / 邮编 |
lng / lat | 经度 / 纬度 |
关联关系
pid自关联- 当前代码库中无引用(电商地区使用
bd_shop_region)
典型使用场景
- 历史遗留地区数据,现版本代码未使用。
二、CMS 表(16 张)
20. bd_cms_content — 内容/文章主表
用途:存储文章、产品、单页等所有 CMS 内容。
核心字段
| 字段 | 说明 |
|---|---|
id | 内容 ID |
acode | 区域编码 |
scode | 所属栏目编码 |
subscode | 副栏目编码 |
title / titlecolor / subtitle | 标题 / 标题颜色 / 副标题 |
filename | 自定义 URL 别名(自动去重) |
author / source | 作者 / 来源 |
outlink | 外链地址(有值则跳转) |
date | 发布日期 |
ico | 缩略图(为空自动从正文提取首图) |
pics / picstitle | 多图路径 / 多图标题(逗号分隔) |
content | 正文(mediumtext) |
tags | 关键词字符串(用于标签检索) |
enclosure | 附件 |
keywords / description | SEO 关键字 / 描述(为空自动截取正文) |
sorting | 排序(默认 255) |
status | 状态 |
istop / isrecommend / isheadline | 置顶 / 推荐 / 头条 |
visits / likes / oppose | 访问 / 点赞 / 反对 |
create_user / update_user | 创建 / 更新人昵称 |
create_time / update_time | 创建 / 更新时间 |
gtype / gid / gnote | 分组类型 / 分组 / 备注 |
aucode | 语言关联码(多语言内容关联) |
关联关系
scode→bd_cms_content_sort.scode(Content::contentsort())acode→bd_cms_area.acode- 扩展值:
bd_cms_content_ext.contentid→ 本表id(删除时级联删除) - 被
bd_cms_member_comment.contentid引用
典型使用场景
- 后台内容列表 / 编辑 / 复制 / 移动栏目。
- 前台文章详情、列表、搜索。
- 单页模型(
type=1)栏目自动创建一条内容。
21. bd_cms_content_ext — 内容扩展字段值表
用途:存储各内容模型自定义字段的值。
核心字段
| 字段 | 说明 |
|---|---|
extid | 扩展记录 ID |
contentid | 关联内容 ID |
ext_* | 动态列,列名由 bd_cms_extfield.name 定义(如 ext_price、ext_color) |
关联关系
contentid→bd_cms_content.id- 列结构由
bd_cms_extfield定义,增删字段会ALTER本表
典型使用场景
- 产品价格、颜色、规格等自定义字段读写(
ContentExt::getExtData())。 - 模型字段变更时自动加列 / 改列 / 删列。
22. bd_cms_content_sort — 栏目/分类表
用途:CMS 栏目树(分类),绑定列表页与内容页模板。
核心字段
| 字段 | 说明 |
|---|---|
id | 栏目 ID |
acode | 区域编码 |
mcode | 所属内容模型编码 |
pcode | 父栏目编码(树形自关联) |
scode | 栏目编码(唯一) |
aucode | 语言关联码 |
name | 栏目名称 |
listtpl / contenttpl | 列表页 / 内容页模板 |
status | 状态 |
outlink | 外链(有值则栏目跳外链) |
subname | 附加名称 |
def1 / def2 / def3 | 栏目自定义描述 |
ico / pic | 缩略图 / 大图 |
title / keywords / description | SEO 信息 |
filename | 自定义 URL 别名 |
sorting | 排序 |
create_user / update_user / create_time / update_time | 审计字段 |
gtype / gid / gnote | 分组信息 |
关联关系
mcode→bd_cms_model.mcode(ContentSort::models())pcode自关联(树,防循环校验)scode被bd_cms_content.scode引用acode→bd_cms_area.acode
典型使用场景
- 栏目管理、拖拽排序、模板绑定。
- 获取子栏目(
getChildrenIds())。 - 单页模型(
type=1)自动建内容。
23. bd_cms_model — 内容模型表
用途:定义内容类型(文章、产品、单页等)及其模板。
核心字段
| 字段 | 说明 |
|---|---|
id | 模型 ID |
mcode | 模型编码(唯一) |
name | 模型名称 |
type | 1=单页,2=列表 |
urlname | URL 名称 |
listtpl / contenttpl | 默认列表 / 内容模板 |
status | 状态 |
issystem | 是否系统内置模型 |
create_user / update_user / create_time / update_time | 审计字段 |
关联关系
mcode被bd_cms_content_sort.mcode和bd_cms_extfield.mcode引用
典型使用场景
- 新建内容模型(如"产品""案例")。
- 决定栏目是单页还是列表形态。
24. bd_cms_extfield — 模型字段定义表
用途:为内容模型定义自定义字段,并同步修改扩展表结构。
核心字段
| 字段 | 说明 |
|---|---|
id | 字段 ID |
mcode | 所属模型编码 |
name | 字段名(必须以 ext_ 开头) |
type | 字段类型(1 单行/2 多行/3 单选/4 多选/5 单图/6 附件/7 日期/8 编辑器/9 下拉/10 多图/11 多图标题/12 二列数组/15 三列数组) |
value | 单选 / 多选的可选值 |
description | 字段描述 |
sorting | 排序 |
关联关系
mcode→bd_cms_model.mcodename对应bd_cms_content_ext的实际列
典型使用场景
- 后台"模型字段"管理。
- 新增字段自动
ALTER bd_cms_content_ext;删除字段自动DROP COLUMN。 - 多图类型自动追加一个
*title字段。
25. bd_cms_area — CMS 区域/站点/语言表
用途:多站点 / 多语言 / 多域名区域的核心表。
核心字段
| 字段 | 说明 |
|---|---|
id | 区域 ID |
acode | 区域编码(唯一,如 cn、en) |
pcode | 父区域编码 |
name | 区域名称 |
domain | 绑定域名 |
is_default | 是否默认区域(全局唯一) |
create_user / update_user / create_time / update_time | 审计字段 |
status | 状态 |
关联关系
acode被几乎所有 CMS 表的acode引用- 删除区域时级联删除
bd_cms_site、bd_cms_company对应记录
典型使用场景
- 新增语言/站点区域,自动创建语言包文件。
- 前台按域名解析
acode实现多站点。 - 默认区域与启用状态保护(不可删默认/启用区域)。
26. bd_cms_site — 站点配置表
用途:按区域保存站点级配置(SEO、主题、备案、统计等)。
核心字段
| 字段 | 说明 |
|---|---|
id | 配置 ID |
acode | 区域编码 |
title / subtitle | 站点标题 / 副标题 |
domain | 站点地址 |
logo | LOGO |
keywords / description | SEO 关键字 / 描述 |
icp | 备案号 |
theme | 主题 |
statistical | 统计代码 |
copyright | 版权信息 |
关联关系
acode→bd_cms_area.acode
典型使用场景
- 后台"站点设置"。
- 前台模板读取站点 SEO、主题、备案。
27. bd_cms_company — 公司信息表
用途:按区域保存公司联系方式等企业信息。
核心字段
| 字段 | 说明 |
|---|---|
id | 主键 |
acode | 区域编码 |
name | 公司名称 |
address / postcode | 地址 / 邮编 |
contact / mobile / phone / fax | 联系人 / 手机 / 电话 / 传真 |
email / qq / weixin | 邮箱 / QQ / 微信 |
blicense | 营业执照 |
other | 其他信息 |
关联关系
acode→bd_cms_area.acode
典型使用场景
- 前台页脚、联系我们页面。
- 区域删除时级联清理。
28. bd_cms_tags — 文章内链词表
用途:配置正文中自动加链接的关键词(SEO 内链)。
核心字段
| 字段 | 说明 |
|---|---|
id | 主键 |
acode | 区域编码 |
name | 关键词名称 |
link | 跳转链接 |
create_user / update_user / create_time / update_time | 审计字段 |
关联关系
acode→bd_cms_area.acode- 与
bd_cms_content.tags不同:本表是"关键词自动内链"配置
典型使用场景
- 前台正文渲染时为指定关键词自动加超链接。
29. bd_cms_link — 友情链接表
用途:友情链接管理,支持分组。
核心字段
| 字段 | 说明 |
|---|---|
id | 主键 |
acode | 区域编码 |
gid | 分组 ID |
name | 链接名称 |
link | 跳转链接 |
logo | 图片地址 |
sorting | 排序 |
create_user / update_user / create_time / update_time | 审计字段 |
关联关系
acode→bd_cms_area.acodegid逻辑分组(非外键)
典型使用场景
- 前台页脚友链展示,按分组调用。
30. bd_cms_slide — 轮播图表
用途:管理各区域/分组的轮播图。
核心字段
| 字段 | 说明 |
|---|---|
id | 主键 |
acode | 区域编码 |
gid | 分组 ID |
pic | 图片 |
link | 跳转链接 |
title / subtitle | 标题 / 副标题 |
sorting | 排序 |
create_user / update_user / create_time / update_time | 审计字段 |
关联关系
acode→bd_cms_area.acodegid逻辑分组
典型使用场景
- 首页 / 栏目轮播图,按
acode+gid调用。
31. bd_cms_label — 定制标签表
用途:供模板调用的全局自定义标签(如电话、版权、Banner)。
核心字段
| 字段 | 说明 |
|---|---|
id | 主键 |
acode | 区域编码 |
name | 标签名 |
value | 标签值 |
type | 字段类型(1 单行/2 日期/3 单图/4 附件/5 编辑器/6 开关/7 多行/8 多图/9 下拉/11 多图标题/12 二列数组/15 三列数组) |
description | 描述 |
create_user / update_user / create_time / update_time | 审计字段 |
关联关系
acode→bd_cms_area.acode- 多图类型自动追加
*title标签
典型使用场景
- 模板中用
{bd:label name="xxx"}输出全局内容。 - 后台"定制标签"维护。
32. bd_cms_member_comment — 会员评论表
用途:存储会员对内容的评论与回复。
核心字段
| 字段 | 说明 |
|---|---|
id | 评论 ID |
pid | 父评论 ID(回复关系) |
contentid | 内容 ID |
comment | 评论内容 |
uid | 评论人 ID |
puid | 被回复人 ID |
likes / oppose | 点赞 / 反对 |
status | 显示状态 |
user_ip / user_os / user_bs | IP / 系统 / 浏览器 |
create_time / update_time | 时间 |
update_user | 更新人 |
关联关系
contentid→bd_cms_content.id(MemberComment::content())uid→bd_user.id(user())puid→bd_user.id(puser())pid自关联(评论树)
典型使用场景
- 内容详情页评论、回复、点赞。
- 后台评论审核与回复。
33. bd_cms_message — 在线留言表
用途:存储前台在线留言/简易表单的提交数据。
核心字段
| 字段 | 说明 |
|---|---|
id | 留言 ID |
acode | 区域编码 |
mobile | 联系电话 |
content | 留言内容 |
user_ip / user_os / user_bs | IP / 系统 / 浏览器 |
recontent | 管理员回复内容 |
status | 是否前台显示 |
uid | 会员 ID(默认匿名) |
dianhua | 电话(扩展字段) |
create_user / update_user / create_time / update_time | 审计字段 |
关联关系
acode→bd_cms_area.acodeuid→bd_user.id(默认匿名用户)- 对应
bd_cms_form中fcode=1的"在线留言"表单
典型使用场景
- 前台"在线留言"提交。
- 后台留言查看、回复、导出。
34. bd_cms_form — 自定义表单表
用途:定义自定义表单,并为其动态创建数据表。
核心字段
| 字段 | 说明 |
|---|---|
id | 主键 |
fcode | 表单编码(唯一,自增生成) |
form_name | 表单名称 |
table_name | 数据表名(自动加 cms_diy_ 前缀) |
create_user / update_user / create_time / update_time | 审计字段 |
关联关系
table_name指向动态创建的bd_cms_diy_*数据表fcode被bd_cms_form_field.fcode引用
典型使用场景
- 后台新建自定义表单(报名、预约、询价)。
- 创建时自动建表(固定含
id/acode/create_time)。 fcode=1为内置"在线留言",不可删除。
35. bd_cms_form_field — 表单字段定义表
用途:定义自定义表单的字段,并同步修改对应数据表。
核心字段
| 字段 | 说明 |
|---|---|
id | 主键 |
fcode | 所属表单编码 |
name | 字段名 |
length | 字段长度 |
required | 是否必填 |
description | 描述 |
sorting | 排序 |
create_user / update_user / create_time / update_time | 审计字段 |
关联关系
fcode→bd_cms_form.fcodename对应表单数据表(bd_cms_diy_*)的实际列
典型使用场景
- 表单字段设计;增删字段自动
ALTER对应 DIY 数据表。
三、CMS 动态生成的 DIY 表
由 bd_cms_form 创建表单时动态生成,表名 bd_cms_diy_<table_name>,固定包含:
| 字段 | 说明 |
|---|---|
id | 自增主键 |
acode | 区域编码 |
create_time | 提交时间 |
<自定义字段> | 由 bd_cms_form_field 定义 |
当前库中的 DIY 表:bd_cms_diy_aaa、bd_cms_diy_abcd、bd_cms_diy_baoming、bd_cms_diy_ces、bd_cms_diy_job、bd_cms_diy_test1、bd_diy_aaaa
典型使用场景
- 自定义表单提交数据落库;后台按表单查看/导出数据。
四、关键关联链速查
bd_cms_area.acode
├─ bd_cms_content.acode
├─ bd_cms_content_sort.acode
├─ bd_cms_site.acode
├─ bd_cms_company.acode
├─ bd_cms_link.acode / bd_cms_slide.acode / bd_cms_label.acode
├─ bd_cms_message.acode / bd_cms_tags.acode
└─ bd_cms_diy_*.acode
bd_cms_model.mcode
├─ bd_cms_content_sort.mcode
└─ bd_cms_extfield.mcode ──(name)──> bd_cms_content_ext 的列
bd_cms_content_sort.scode
└─ bd_cms_content.scode
bd_cms_content.id
├─ bd_cms_content_ext.contentid
└─ bd_cms_member_comment.contentid
bd_cms_form.fcode
├─ bd_cms_form_field.fcode ──(name)──> bd_cms_diy_* 的列
└─ table_name ──> bd_cms_diy_*
bd_admin.id
├─ bd_admin_group_access.uid ──> bd_admin_group.id ──> bd_admin_rule.id
└─ bd_admin_log.admin_id
bd_user.id
├─ bd_user_money_log.user_id
├─ bd_user_score_log.user_id
├─ bd_cms_member_comment.uid / puid
└─ bd_token.user_id
bd_user_group.id ──> bd_user.group_id
bd_user_level.gcode ──> bd_user.level两套"动态列"机制(易混淆)
bd_cms_extfield+bd_cms_content_ext:给内容模型加字段。bd_cms_form_field+bd_cms_diy_*:给自定义表单加字段。
两者都是直接改物理表结构,而非 EAV 键值存储。
更新时间:2026-09-18 22:29:39
BadouCMS