模板二次开发:给网站加一个字段、加一个页面
2026 年 09 月 25 日 · 约 7 分钟读完
模板买回去用一阵子,迟早会想加东西:客户表多个「生日」字段,预约系统多个「服务项目」页面。加之前先建立一个原则——字段是集中定义的,加字段要改定义,而不是只改页面上的字。只改页面文案,加完的数据存不下来,等于没加。
一个原则:字段只改页面文案不算加
模板里的字段(客户表的姓名电话、预约表的服务时间)都是在某处集中定义的,表单、列表、详情页都是从这份定义渲染出来的。所以加字段的正确姿势是:在定义里加,三个页面自动一起变。你在页面上看到的输入框,只是定义的影子,改影子没用。
第一步:让 AI 找到字段定义在哪
每个模板的定义位置不一样,别自己翻。直接问:
在这个项目里,客户表单的字段是在哪个文件定义的?只找出来告诉我,先别改。它指出来之后,你看一眼文件名和结构,心里有数了再让它动手。这一步是上一篇文章方法的实战版。
加字段三步走
- 在定义里加字段:写清楚类型(文本、数字、日期、图片)、是否必填、有没有默认值
- 让 AI 跑一遍类型检查和测试,确认没把别的地方搞坏
- 自己到页面上走一遍:新建一条、填上新字段、保存、再打开看还在不在。数据能存下来才算加完了
加一个新页面:先想清楚从哪点进去
加页面比加字段多一步思考:这个页面从哪点进去?导航栏加个入口,还是从某个详情页跳过去?想清楚入口再让 AI 写页面,不然就是个孤岛页面——存在,但用户永远点不到。页面本身也是从模板的页面配置里加,和字段一样走定义。
改完必须做的两件事
- 跑类型检查(npm run typecheck)和测试(npm test),0 错误才算过关
- 把相关流程完整点一遍:新建、编辑、删除,别只看页面长得对不对
字段类型选型:选错比不加更麻烦
加字段第一步不是写名字,是选类型,选错了事后改很痛苦。文本最通用,但别什么都用文本:纯数字比如价格、数量,用数字类型,不然以后「按价格排序」会排错;日期时间用日期类型,文本存的日期没法按时间筛选;图片用图片类型,一般是存文件地址,别把图片转成 base64 塞进文本字段,数据库会撑爆。
还有一种「关联」类型:比如订单要关联客户,别存客户的名字文本,存客户的 ID 做关联。名字会改,ID 不会。用文本存名字,哪天客户改名,历史订单全乱套。凡是「选出来的」东西——客户、分类、服务项目,优先用关联,这是数据库设计里最值钱的一条经验。
必填和默认值:必填越少越好
每个必填字段都是一道门,多一道门,填到一半放弃的人就多一点。所以必填只给真正不能没有的:名字、联系方式这种。其他的有合理默认值就给默认值,比如「状态」默认「待处理」;没有默认值的允许为空,以后再补。表单越短,完成率越高,这是实测出来的。
还有个坑:新加必填字段,老数据怎么办?数据库里已经有一千条客户记录,新加的「生日」必填,老记录没有生日,一保存就报错。两种处理:给老数据填一个默认值,或者这个字段允许为空。动手之前先问 AI:「这个表里现在有多少条数据?加必填字段会影响它们吗?」让它先查再改,别直接上。
删字段:先备份,再动手
删字段比加字段危险,因为数据删了找不回来。动手前三步:先让 AI 全项目搜这个字段在哪用过——列表、详情、搜索、导出、统计,都可能引用;确认没用了,先把数据导出来存一份,万一删错还能回来;然后删定义、删所有引用,跑一遍类型检查和测试,全绿才算完。
删完别急着高兴,到页面上把相关流程点一遍:新建、编辑、列表显示,确认没有 undefined 或者报错。删字段的 bug 经常藏在导出和统计这种不常用的功能里,顺手点一下,省得用户先发现。
改字段名:顺手,但危险
「客户姓名」改成「联系人」,听起来是改两个字,实际是改定义、改所有引用它的页面、改数据库列名、改导出模板,一处漏了就报错。改之前让 AI 全项目搜这个字段名,列出所有引用,改完跑测试。字段名一旦定下来,能不改就不改——改名的成本永远比你想的高。
字段多了页面太长:分组
字段加到十几个,表单一屏放不下,用户看着就烦。办法是分组:基本信息一组、联系方式一组、高级选项折叠起来。分组也是在定义里配,不是靠页面硬排。记住:用户一次只填一组,填完再展开下一组,完成率比一长条高得多。
给 AI 的加字段提示词模板
直接复制这段,填上你的字段:「在客户表的字段定义里加一个字段:生日,类型日期,允许为空,不必填。只改定义,不要动其他字段。改完跑类型检查和测试,然后告诉我表单、列表、详情页是不是都自动带上了。」一次说清类型、必填、默认值,AI 不用来回问你,省钱又省事。
下拉选项:选项值存在哪
「订单状态」这种下拉选项,值存在哪?两种做法:写死在代码里,或者存在数据库里。选项基本不变的(比如性别),写死在代码里最简单;经常变的(比如服务项目、价格套餐),放数据库里做成可配置的,不然每加一个选项都要改代码重新上线。判断标准:这个选项以后会不会变?会变就放数据库,别偷懒。
图片字段:存哪
图片别存进数据库,数据库只存图片的路径或地址。图片文件放服务器的 uploads 目录,或者对象存储。备份的时候记得把图片目录也带上——很多人只备份数据库,服务器一挂,图片全没了,数据库里剩一堆打不开的路径。路径用相对的,别写死域名,换域名的时候不用批量改数据。
金额:存「分」不存「元」
价格、金额这种字段,存「分」(整数),别存「元」(小数)。计算机算小数有精度问题,0.1 加 0.2 不等于 0.3,这种 bug 藏得很深。存整数分,显示的时候再除以 100 转成元。这是所有涉及钱的系统的铁律,早养成习惯,省得以后返工。
加页面:列表、详情、表单三件套
新功能一般三个页面一起加:列表页(看所有)、详情页(看一个)、表单页(新建和编辑)。动手前先想清楚入口:从导航进,还是从某个详情页跳过去?想清楚再让 AI 写,不然就是个孤岛页面——存在,但用户永远点不到。另外,权限别漏:这个页面没登录能不能看?只能自己看还是都能看?权限问题上线后再补,比加页面本身还麻烦。
页面太多:导航怎么组织
页面加到十几个,导航栏挤不下了。办法:分组,相关的放一组;不常用的收到二级菜单;加面包屑,让用户知道自己在哪。原则:用户三次点击内能到任何页面,超过三次的就是迷宫。导航是网站的骨架,骨架乱了,加再多页面也没用。
搜索框:要不要加
数据上百条了,加个搜索框。搜索先做最简单的:按名字模糊搜,够用很久。别一上来做全文检索、拼音搜索,那些是数据上万条之后的事。搜索框放列表页最显眼的位置,别藏在角落。用户找东西找不到,第一反应是「这个站不好用」,不是「我再翻翻」。