数据库设计(SQLite)

June 2, 2026 · View on GitHub

表:Comment

评论主表,存储所有评论数据。

字段类型约束说明
idINTEGERPRIMARY KEY AUTOINCREMENT自增 ID
pub_dateTEXT/DATETIMEDEFAULT CURRENT_TIMESTAMP创建时间
post_slugTEXTNOT NULL博客文章唯一标识(如 /posts/hello-world
authorTEXTNOT NULL昵称
emailTEXTNOT NULL邮箱(用于 Gravatar,不公开)
urlTEXT个人网站(可为空)
ip_addressTEXT记录 IP 用于反垃圾
deviceTEXT设备信息(如 Windows 10
osTEXT操作系统
browserTEXT浏览器(如 Chrome 96.0.4664.110
user_agentTEXT原始 User-Agent
content_textTEXTNOT NULL评论内容(纯文本)
content_htmlTEXTNOT NULL评论内容(HTML)
parent_idINTEGERREFERENCES Comment(id) ON DELETE SET NULL回复的父评论 ID(NULL 表示顶级评论)
statusTEXTDEFAULT 'pending'pending / approved / rejected / deleted

状态默认值说明: Node.js 版本默认值为 'pending';Worker/Go 版本的 SQL schema 默认值为 'approved',应用层会自动覆盖处理。

索引

索引名字段说明
idx_post_slugpost_slug加速按文章查询评论
idx_statusstatus加速按状态筛选评论

外键约束

  • parent_id 引用自身 idON DELETE SET NULL——父评论被删除时,子评论的 parent_id 置为 NULL,变为顶级评论。

表:Settings

系统配置键值对存储表。

字段类型约束说明
keyTEXTPRIMARY KEY设置项名称
valueTEXTNOT NULL设置值
updated_atTEXT/DATETIMENOT NULL DEFAULT datetime('now')最后更新时间

常用设置项

key说明
site_name站点名称
admin_email管理员邮箱
admin_name管理员用户名
admin_password管理员密码(bcrypt 哈希)
smtp_hostSMTP 服务器地址
smtp_portSMTP 端口
email_user邮箱用户名
email_password邮箱密码
email_secure是否使用 SSL/TLS 加密
email_enabled是否启用邮件通知
reply_template回复通知邮件模板
notification_template新评论通知邮件模板
comment_auto_approve是否自动审核通过
allow_origin允许的跨域来源
ip_blacklistIP 黑名单(JSON 数组)
email_blacklist邮箱黑名单(JSON 数组)
blogger_badge_enabled是否启用博主标识
blogger_badge_text博主标识标签文字
placeholder_name昵称输入框占位文字
placeholder_email邮箱输入框占位文字
placeholder_content评论内容输入框占位文字
placeholder_url网址输入框占位文字
admin_comment_key管理员评论密钥(敏感字段)
admin_comment_key_enabled是否启用管理员评论密钥
password_changed是否已修改默认密码

表:EmailVerification

邮箱验证记录表,用于评论前邮箱验证流程。

字段类型约束说明
idINTEGERPRIMARY KEY AUTOINCREMENT自增 ID
emailTEXTNOT NULL待验证的邮箱地址
tokenTEXTNOT NULL UNIQUE验证令牌(唯一)
expires_atTEXTNOT NULL令牌过期时间
verifiedINTEGERNOT NULL DEFAULT 0是否已验证(0=未验证,1=已验证)
post_slugTEXT关联的文章标识(可选)
post_titleTEXT关联的文章标题(可选)
created_atTEXTNOT NULL DEFAULT datetime('now')创建时间
verified_atTEXT验证通过时间

索引

索引名字段说明
idx_ev_emailemail加速按邮箱查询验证记录
idx_ev_tokentoken加速按令牌查询验证记录