帝国 CMS 字段类型怎么选
学完这篇,你就能在帝国 CMS 后台给数据表加字段时,准确判断每个字段该选哪种数据库类型、哪种表单元素,不再出现"存不下""搜不到""价格变整数"这类问题。
第一步:先分清两套"字段类型",别搞混
帝国 CMS 加字段时,界面上其实有两组容易混淆的选项:一组是数据库字段类型(决定数据以什么格式存进 MySQL),另一组是输入表单显示元素(决定编辑人员在后台看到什么控件)。
入口位置:后台 →「系统」→「数据表与系统模型」→「管理数据表」→ 找到目标表(例如"新闻系统数据表 phome_ecms_news")→ 点右侧「管理字段」→「增加字段」。
进去后你会看到"字段名""字段标识""字段类型""输入表单显示元素""字段长度""选项内容"等一列输入框。先定表单元素(人怎么填),再定字段类型(库怎么存),顺序反过来很容易配错。
注意:字段名只能用英文小写字母/数字/下划线,且不能与系统已有字段重名(如 id、classid、title、newstime)。改错字段名会导致模板调用失效。
第二步:按"填写方式"选表单显示元素
这一步决定编辑人员录入时的控件,常见对应关系:
- 一句话标题、短名称 →「文本框」
- 一段几十字的简介 →「多行文本框」
- 正文、长描述 →「编辑器」(带富文本)
- 只能在几个值里选一个 →「下拉框」或「单选框」
- 可以选多个值 →「复选框」或「多选框」
- 封面图、缩略图 →「图片」
- 上传文档、压缩包 →「附件」
- 发布时间、活动日期 →「日期」或「日期时间」
- 系统自动算出来、不让编辑改 →「隐藏域」
如果选了「下拉框」「单选框」「复选框」,必须填「选项内容」框。格式是每行一个选项,写成"值|显示文字",例如:
0|普通
1|推荐
2|头条
注意:「选项内容」里没写"|"时,值和显示文字会一样;值建议用数字或英文,别用中文,后期用 SQL 或 PHP 判断时更省事。
第三步:按"数据特征"选数据库字段类型
决定了控件之后,再选数据库字段类型,对照下面这张最常用的表:
- VARCHAR:短文本,标题、姓名、图片路径、网址。长度写 120、255 之类。
- TEXT / MEDIUMTEXT / LONGTEXT:长文本,简介用 TEXT,正文用 MEDIUMTEXT(约 1600 万字符上限),超大内容才用 LONGTEXT。
- INT:整数,状态值、排序号、点击数、关联 ID。
- DECIMAL(10,2):金额、价格,保留两位小数。
- FLOAT / DOUBLE:经纬度、比例这类允许误差的数值。
- DATE / DATETIME:只记日期用 DATE,要精确到时分秒用 DATETIME。
- TIME:只记时分秒。
- CHAR:定长编码,如省份代码,用得少。
注意:价格千万不要用 FLOAT,浮点数会出现 19.99 存成 19.989999 的情况,结算时对不上账。金额一律用 DECIMAL。
注意:VARCHAR 长度别写太大,一行所有字段加起来有 65535 字节上限,一张表里塞十几个 VARCHAR(255) 就可能建表失败。内容可能超过 255 字就直接用 TEXT。
第四步:几个典型字段的完整配法
直接照抄即可:
- 文章标题:字段名 title2,表单元素「文本框」,类型 VARCHAR,长度 120,勾选「作为搜索字段」。
- 商品价格:字段名 price,表单元素「文本框」,类型 DECIMAL(10,2),长度填 10,勾选「必填」。
- 推荐等级:字段名 level,表单元素「下拉框」,选项内容填
0|普通 / 1|推荐 / 2|头条,类型 INT,长度 4。 - 封面图:字段名 coverpic,表单元素「图片」,类型 VARCHAR,长度 255。
- 正文:字段名 content2,表单元素「编辑器」,类型 MEDIUMTEXT。
- 活动时间:字段名 activetime,表单元素「日期时间」,类型 DATETIME。
字段加完后,在「管理字段」列表能看到新字段,模板里用 <?=$bqr[字段名]?> 调用。
注意:已存在的字段想改类型(比如 VARCHAR 改 TEXT),先在「系统」→「备份与恢复数据」里备份整张表,再去「管理字段」→「修改字段」。改类型有丢数据的风险,尤其是 TEXT 改 VARCHAR 时超长内容会被截断。
注意:新增字段后如果前台不显示,去「系统」→「数据更新」→「刷新数据表结构」和「更新缓存」,再重新生成一遍页面。
小结
- 帝国 CMS 加字段有两组类型:表单显示元素管"人怎么填",数据库字段类型管"库怎么存",先表单后数据库。
- 短文本用 VARCHAR,长文本用 TEXT/MEDIUMTEXT,整数用 INT,金额用 DECIMAL,时间用 DATE/DATETIME。
- 下拉、单选、复选的选项内容按"值|显示文字"每行一个写。
- 需要被前台搜索的字段,记得勾「作为搜索字段」。
- 改已有字段类型前必须备份数据,改完刷新数据表结构并更新缓存。
原文链接:https://www.gj0.com/thread-88.html
转载请注明出处并保留本声明;内容仅代表作者观点,与本站立场无关。若本文涉嫌侵权,请联系本站处理。