为什么要重新做一个内容平台
我们习惯了把内容放在一个系统里,把讨论放在另一个系统里,把考试和会员放在第三个系统里。每个系统都还能用,但身份、标签和内容被切成了碎片。
通印象(lt)想做的事情很朴素:让一个账号,穿行于所有内容形态。
四个独立模块
- CMS:文章、图片、视频、栏目与单页,负责编辑部的表达。
- BBS:版块、主题与回复,负责社区里的讨论。
- Exam:题库、组卷、计时与判分,负责学习后的检验。
- Blog:个人空间、日志、相册与留言,负责每个会员自己的房间。
它们各自拥有模型、路由、迁移和后台,不互相引用对方的业务代码。但它们都向同一个内容总线登记自己的公开内容。
独立,是为了让每个模块可以单独演进;互通,是为了让读者不必关心内容来自哪个模块。
内容总线做了什么
当一篇文章、一个主题、一场考试或一篇日志发布时,模块会向 contents 表写入一条统一记录:标题、摘要、封面、作者、状态、发布时间、标签和详情地址。全站搜索、首页推荐、标签页与「相关内容」都只读这一张表。
这意味着:
- 同一个标签下,可能同时出现一篇文章、一个社区主题和一篇博客。
- 会员在任何一个模块里的创作,都会汇总到个人主页。
- 模块停用后,历史内容记录仍然保留,重新启用即可恢复。
会员系统是唯一的主语
后台管理员与前台会员共用 users 表,用角色区分权限。登录一次,社区发帖、参加考试、写博客和评论都不需要再次认证。
我们不再维护两套密码,也不再把“管理员”当成一个脱离会员体系的存在。
内容产品的核心不是模块数量,而是内容与人的关系是否连续。这大概就是我们重新做一遍的原因。
评论 3
期待。尤其是模块之间的事件和契约部分。
“独立是为了让每个模块可以单独演进,互通是为了让读者不必关心内容来自哪个模块。” 这句话很喜欢。