帝国 CMS 字段类型怎么选

chinaz
chinaz 正式会员超兽战士
发布于 2026-10-07 05:13 ·1 浏览 ·0 回复

学完这篇,你就能在帝国 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。

第四步:几个典型字段的完整配法

直接照抄即可:

  1. 文章标题:字段名 title2,表单元素「文本框」,类型 VARCHAR,长度 120,勾选「作为搜索字段」。
  2. 商品价格:字段名 price,表单元素「文本框」,类型 DECIMAL(10,2),长度填 10,勾选「必填」。
  3. 推荐等级:字段名 level,表单元素「下拉框」,选项内容填 0|普通 / 1|推荐 / 2|头条,类型 INT,长度 4。
  4. 封面图:字段名 coverpic,表单元素「图片」,类型 VARCHAR,长度 255。
  5. 正文:字段名 content2,表单元素「编辑器」,类型 MEDIUMTEXT。
  6. 活动时间:字段名 activetime,表单元素「日期时间」,类型 DATETIME。

字段加完后,在「管理字段」列表能看到新字段,模板里用 <?=$bqr[字段名]?> 调用。

注意:已存在的字段想改类型(比如 VARCHAR 改 TEXT),先在「系统」→「备份与恢复数据」里备份整张表,再去「管理字段」→「修改字段」。改类型有丢数据的风险,尤其是 TEXT 改 VARCHAR 时超长内容会被截断。

注意:新增字段后如果前台不显示,去「系统」→「数据更新」→「刷新数据表结构」和「更新缓存」,再重新生成一遍页面。

小结

  • 帝国 CMS 加字段有两组类型:表单显示元素管"人怎么填",数据库字段类型管"库怎么存",先表单后数据库。
  • 短文本用 VARCHAR,长文本用 TEXT/MEDIUMTEXT,整数用 INT,金额用 DECIMAL,时间用 DATE/DATETIME。
  • 下拉、单选、复选的选项内容按"值|显示文字"每行一个写。
  • 需要被前台搜索的字段,记得勾「作为搜索字段」。
  • 改已有字段类型前必须备份数据,改完刷新数据表结构并更新缓存。
版权声明:本文来自 GJ论坛《帝国 CMS 字段类型怎么选》
原文链接:https://www.gj0.com/thread-88.html
转载请注明出处并保留本声明;内容仅代表作者观点,与本站立场无关。若本文涉嫌侵权,请联系本站处理。

全部回复 0

还没有回复,来抢沙发~