建立你的产品思维 —— 从一句需求,到一个小程序
社团 = 一群因为同一个爱好聚在一起的人。
他们有固定的活动,也有分工和负责人。
| 环节 | 线下怎么做 | 麻烦在哪 |
|---|---|---|
| 招新 | 贴海报、发传单 | 只有路过的人看得到;说不清有什么活动、什么福利 |
| 报名 | 微信群接龙 / 填纸质表 | 消息刷屏、容易漏、字迹看不清 |
| 名单 | 班干部用 Excel 记 | 只有一个人手上有这份表,换人就得重来 |
| 通知 | 群里喊一声 | 被聊天记录刷掉,重要的事总有人没看到 |
| 分工 | 谁在哪个部门? | 说不清;部长是谁要问才知道 |
| 身份 | 他是什么人 |
|---|---|
| 🙋 游客 | 还没登录、只是路过看看的人 |
| 📝 报名者 | 填了报名表、还在等结果的人 |
| 👥 社团成员 | 报名通过了、正式加入社团的人 |
| 🏢 部门成员 | 被分进了某个部门的人 |
| ⭐ 部长 / 副部长 | 部门里被指派的负责人 |
| 🛠️ 管理员 | 管整个社团的人:审核报名、开部门、分配成员 |
做出这个小程序的第一个版本——一个能打开、能看、能登录的"社团主页"。
首页就是社团的"线上招新海报"——让人一眼看懂这是什么社团、有什么活动、怎么加入,替代纸质传单。登录是为了让小程序记住每个人是谁:后面报名、留言、审核、分部门,全靠这个身份才能区分开。
帮我制作一个跑步社团小程序,首页显示社团的招新、社团活动、社团宣传标语、社团福利等。个人页面要使用微信账号一键登录,登陆后获取到用户的openid,保存到云端数据库
第 1 条提示词 | 编号 1_1 | 阶段一
把"一键登录"换成微信现在允许的方式:头像授权 + 昵称授权。
解决一个真实问题:微信改了政策,老做法已经拿不到真实头像和昵称了。网上很多老教程、老提示词会直接失效。这一步会让你亲眼看到——"照着视频做不出来"不一定是你的错,可能是时代变了。
把微信账号一键登录替换成获取微信用户的头像授权和昵称授权
第 2 条提示词 | 编号 1_2 | 阶段一



在首页加一个大家都能写的留言板。
给社团一个"公共讨论区"——像公告栏下面的意见本。新人可以问"零基础能加入吗",老成员可以约跑,管理员可以收集反馈。这是小程序第一次把用户写的内容存进云端。
帮我在首页做一个留言板,每个人都可以留言
第 3 条提示词 | 编号 2_1 | 阶段二
把留言板从首页里"搬出来",单独成为一个页面。
首页堆太多东西会显得乱。把功能拆成独立页面是所有 App 的标准做法——就像手机底部每个图标对应一个页面。这一步学的是"什么时候该拆页面"。
把留言板单独做成一个页面,点击留言板就能跳转进去这个页面
第 4 条提示词 | 编号 2_2 | 阶段二
给留言做一次"减法"——把头像去掉,只留昵称。
头像会让页面变重(要加载图片、要处理加载失败、有人没设置头像就会空一块),而文字留言用昵称已经完全够用。学会砍功能也是一种能力——不是功能越多越好。
留言板不用显示用户的头像,只显示昵称即可
第 5 条提示词 | 编号 2_3 | 阶段二
让自己发的留言,自己可以删掉。
这是"权限"的第一课:同一个页面,对不同的人显示不同的按钮。同时回答一个很实际的问题——我的留言凭什么能删、别人的为什么不能删?靠的是每条数据里都藏着一个"归属人"标记(_openid),系统拿它和当前登录的人比对。
自己的发布的留言自己可以删除
第 6 条提示词 | 编号 2_4 | 阶段二
让每个人都能看到所有人的留言——这需要你自己去改一次数据库权限,AI 改不了。
这是第一次遇到"代码完全正确,但功能就是不生效"。留言写得再对,只要数据库权限没放开,别人就是看不到你的留言。权限就是"谁能看、谁能改"——所有 App 的安全性都建立在这件事上。
| 权限档位 | 适用场景 |
|---|---|
读取全部数据,修改本人数据 [READONLY] | 用户评论、用户公开信息等 ← 这一档就是我们要选的 |
读取和修改本人数据 [PRIVATE] | 用户个人设置、用户订单管理等 |
读取全部数据,不可修改数据 [ADMINWRITE] | 商品信息等 |
无权限 [ADMINONLY] | 后台流水数据等 |
第一课讲过的就是这张表。第二课后面(第 36 页)还会遇到一种要自己写规则的情况。
在留言板中,每个人都可以看到其他人的留言,要修改权限(
读取全部数据,修改本人数据[READONLY]
适用场景:用户评论、用户公开信息等)
第 7 条提示词 | 编号 2_5 | 阶段二 · 需要手动改权限



在底部导航栏加第三个按钮"部门",点进去的页面先留空。
这是故意留白。先把入口摆出来,让你每次打开小程序都看见它——你现在还不知道里面要放什么,等到后面做部门管理的时候,这个空页面就会一点点被填满。真实的 App 就是这么长出来的:先占位,再填内容。
在底部导航栏做一个部门按钮,点击进去的页面先设为空页面
第 8 条提示词 | 编号 3_1 | 阶段三
把首页的"招新公告"变成能真正报名的页面。
这是整个小程序最关键的一步——把"看"变成"参与"。表单是所有报名、注册、下单、登记类功能的基本形态:收集信息 → 提交 → 存起来。学会这一个,以后做任何"填信息提交"的东西都是同一套思路。
点击首页的社团招新跳转进去的页面是社团招新的页面,这个页面底部要有一个加入社团的按钮,点击加入社团会有一个表单填写,表单要填写姓名、班级,想申请的部门,表单最下面有一个提交,点击提交则显示提交成功
第 9 条提示词 | 编号 3_2 | 阶段三
做一个管理员后台(能审核报名、能发通知),同时让学生自己能查进度。
这一步把小程序的用户分成两种角色:普通同学和管理员,给他们不同的界面。报名 → 审核 → 通知,是一个完整闭环,现实里所有办事类系统都是这个结构:请假审批、活动报名、作业提交、售后工单。而"通知"解决的是真问题——社团招新要通知谁来面试、几点、在哪里。
在我的页面做一个管理按钮,点击管理按钮会弹出一个密码,要输入密码123456才能进入管理页面,管理页面可以看到报名者加入社团的申请,管理员可以进行审核,同意或者拒绝,或者可以通知给该用户(通知用于给用户发送消息,提示什么时候需要来面试,在什么地址面试,可以发送给该用户)。我的页面还要有一个我的申请按钮,点击我的申请按钮进去的页面,可以看该用户提交的社团申请,以及可以看到管理员给该用户的的通知
第 10 条提示词 | 编号 3_3 | 阶段三
在管理页里加一张"社团成员表",把审核通过的人记录进去。
"报名表"和"成员表"是两件不同的事:报名表记录的是"申请",成员表记录的是"已经是"。就像应聘简历和员工名册——投了简历不等于入职。同一件事,可能要用两张表分别记录不同阶段。
在管理页面增加一个成员表,报名成功(管理员点击同意的成员),都会显示在社团成员表里面。每个通过的成员都要保存到云端数据库
第 11 条提示词 | 编号 3_4 | 阶段三
补一条规则:管理员点"同意"的时候,自动把这个人同步写进成员表。
这是一条典型的"验收时才发现漏了"的提示词:你点完同意,发现成员表还是空的。这个"发现问题的过程"本身就是需求的一部分。做完就自己点一遍,发现问题马上补一条提示词。
审核通过的成员要同步保存到社团成员里面
第 12 条提示词 | 编号 3_5 | 阶段三
修一个 bug:管理员点"同意/拒绝"没有任何反应。
代码看起来完全正常,问题却不在代码里,而在数据库权限上。默认权限不允许一个人修改别人创建的数据。这一步要记住一句话:AI 只能改代码,改不了后台配置。以后遇到任何"功能不生效",先分清是代码问题还是配置问题——知道该去哪里找原因,比会写代码更重要。
在 applications 集合的「权限设置 → 自定义安全规则」里填:
{ "read": true, "write": true }
read: true 表示所有人都能读,write: true 表示所有人都能改。
这就是「开放所有人可读可改」——功能跑通了,但安全性也放开了。可以想一想:如果不想放这么开,有没有别的办法?
applications 集合的权限。管理员点击不了同意和拒绝,是因为权限没有要放,要开放所有人可读可改才行。
第 13 条提示词 | 编号 3_6 | 阶段三 · 需要手动改权限
给成员列表也做一次减法:去掉头像,只显示昵称。
和前面留言板那一步是同一件事,但这里有个重要的对比:为什么同样一句话要写两遍?因为这是两个不同的页面,AI 不会自动把要求推广到别处。需求要说到具体位置——"不要头像"说一次只改一处。
社团成员不需要显示头像,只显示昵称即可
第 14 条提示词 | 编号 3_7 | 阶段三
报名通过时,除了存姓名,还要把这个人的微信身份(openid)一起存进成员表。
解决一个隐形但致命的问题:光有名字认不出人。社团里有两个"张伟"怎么办?存了 openid,小程序就能做到"谁登录就认谁",后面判断"你是不是这个部门的成员""你能不能点管理按钮"才不会认错人。openid 是身份,名字只是标签——标签会重复,身份不会。
在报名的社团时候,通过的成员要保存到成员表里面去,同时也要保存该用户的openid
第 15 条提示词 | 编号 3_8 | 阶段三




让管理员能开设部门,并把成员分配进部门——那个一直空着的"部门"页面,终于要填上了。
把一个大社团拆成训练部、宣传部、后勤部——就像公司分部门、班分小组。这是小程序第一次出现层级:社团 → 部门 → 人。也是第一次出现"看得到、但进不去"的设计:不是成员就点不进去。
在管理员页面中,增加一个部门选项卡,可以开设部门,填写部门的名字,部门的职责,部门的描述,添加成员,添加部长,副部长。开设的部门要在部门页面显示出来,只有属于该部门的成员才可以点击跳转进去该部门的页面。
第 16 条提示词 | 编号 4_1 | 阶段四
单独建一张"部门成员表",专门记录"谁在哪个部门"这条关系。
为什么不能直接在部门里写一串成员名字?因为那样就做不到"一个人只能进一个部门""查看某个部门的全部成员"这些功能。用一个单独的表格记录"关系",是所有 App 背后存数据的基本思路——你手机里的聊天记录、好友列表、点赞,都是这么存的。理解了这个,就理解了软件世界的一半。
还需要建立一个部门成员表,加入这个部门的成员都要保存到部门成员表里面,比如:一个部门可以有多个成员(类似于一个房间可以有多个成员的规则)
第 17 条提示词 | 编号 4_2 | 阶段四
单独一张表,每条记录表示「某个部门的某个成员」,和 members 表分开。
编号 4_2(提示) | 这是给 AI 的一句补充说明,不是功能需求
添加成员、设置部长这些操作,都从已有的社团成员里挑,而不是手打名字。
解决一个很实际的问题:手打名字会打错(少一个字、多一个空格、写成小名),一旦打错,后面"这个人属不属于这个部门"就全对不上了。从列表里选,数据永远一致。这就是"用选择代替输入"——你平时填表时看到的日期选择器、城市下拉框,都是这个原因。
部门管理的添加成员,设置部长,设置副部长,要从社团成员里面选择
第 18 条提示词 | 编号 4_3 | 阶段四
加一条你们社团自己的规定:已经加入部门的人,不能再加入第二个部门。
注意:这条规则 AI 绝对不会自己想到。它不是技术问题,是你们社团自己定的规矩——就像"一个人不能同时是两个班的班长"。业务规则必须你来说,AI 只负责实现你已经想清楚的那部分。你没想到的规则,它也不会替你补上。
成员已经加入部门后,就不可以再新加部门
第 19 条提示词 | 编号 4_4 | 阶段四
给部门管理补上"移除成员"的功能。
一个只会"加"不会"减"的功能是不完整的。真实系统里"退"和"进"同样重要:退部门、取消报名、退订、解绑。做完一个功能,问自己一句"那反过来的操作呢?"
还需要有一个移除成员的功能
第 20 条提示词 | 编号 4_5 | 阶段四
让"社团成员"页面也同步显示每个人所在的部门。
同一个事实(谁在哪个部门)被两个页面同时需要。这就带来一个真实开发中最常见的问题:改了一处,另一处要跟着变。很多 bug 都是这么来的——加的时候同步了,移除的时候忘了同步。改完一件事,去所有相关页面都看一眼。
在部门的添加成员后,该社团成员页面的部门显示,也要同步显示该部门,比如:我把A加入了该部门,那么我在社团成员表里面可以看到A成员的部门
第 21 条提示词 | 编号 4_6 | 阶段四
让部门成员能真正点进去自己的部门页面。
把前面定的规则真正落地。这里会出现一个很典型的 bug:部门列表上明明显示"✓ 已加入",点进去却提示"你不是该部门的成员"——因为两个页面判断"是不是成员"的标准不一样。同一个规则,要用同一套标准去判断。
我加入了该部门后,可以在部门页面点击该部门,跳转进去该页面
第 22 条提示词 | 编号 4_7 | 阶段四
在部门管理里加一个"查看成员"按钮,并指定它放在"添加成员"的上面。
注意这条提示词里有一句"查看成员按钮要放到添加成员的上面"——这是很典型的真实需求:功能放在哪里,也是需求的一部分。你只说"加个按钮",AI 可能给你放在最下面,你还得再改一次。学会把"放在哪、长什么样"一起说清楚。
在管理页面的部门管理中,要增加一个查看成员按钮,点击查看成员,可以看到该部门的所有成员,查看成员按钮要放到添加成员的上面
第 23 条提示词 | 编号 4_8 | 阶段四




让每个部门的部长能在自己部门里发布通知、颁布任务。
这是社团真正的日常运转工具——部长在群里发通知容易被刷掉,写在部门页里大家随时能查。也是权限最细的一层:同一个页面,游客进不来、普通成员只能看、部长能发。
在部门详情页面设置一个管理,只有该部门的部长和副部长才可以点击这个管理,点击管理后,会弹出一个管理窗口,管理窗口可以发布通知或颁布任务。这些通知只会在该部门的详情页中显示(类似待办事项清单的添加代办)。而且一个部门有多个通知和多个任务
第 24 条提示词 | 编号 5_1 | 阶段五
| 📢 通知 | ✅ 任务 | |
|---|---|---|
| 是什么 | 告诉大家一件事 | 安排大家做一件事 |
| 例子 | 「这周三训练改到 5 点」 「下周要拍社团合照」 | 「宣传部本周出一张招新海报」 「后勤部周日带水过去」 |
| 要不要回应 | 看到就行 | 要有人去做完 |
| 在页面上 | 红点 · 排成一列 | 绿点 · 排成一列 |


| 身份 | 他能看到 / 能做什么 |
|---|---|
| 🙋 游客 | 只能看首页。留言板上没有发送框,部门点不进去。 |
| 📝 报名者 | 能填报名表,能看自己的申请进度和管理员发来的通知。 |
| 👥 社团成员 | 出现在成员表里,能被分到部门。留言板能发、能删自己的。 |
| 🏢 部门成员 | 能点进自己部门的页面,看部门通知和任务。 |
| ⭐ 部长 / 副部长 | 上面都有,还多一个「⚙️ 管理」按钮,能在部门里发通知、派任务。 |
| 🛠️ 管理员 | 管整个社团:审核报名、开设部门、分配成员、设部长。 |
| 模块 | 用哪几条提示词做出来的 |
|---|---|
| ① 社团主页 | 1_1 1_2 |
| ② 留言板 | 2_1 2_2 2_3 2_4 2_5 |
| ③ 招新报名 | 3_1 3_2 |
| ④ 管理员审核 | 3_3 3_4 3_5 3_6 3_7 3_8 |
| ⑤ 部门管理 | 4_1 4_2 4_3 4_4 4_5 4_6 4_7 4_8 |
| ⑥ 部门通知与任务 | 5_1 |
共 0 页 · 点任意一页直接跳过去