专栏文章
如何建立自己的文章系统(数据库版)
科技·工程参与者 9已保存评论 20
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 20 条
- 当前快照
- 1 份
- 快照标识符
- @mlmkrqqh
- 此快照首次捕获于
- 2026/02/15 01:13 5 天前
- 此快照最后确认于
- 2026/02/19 01:14 13 小时前
你是否想要一个个人博客,但是嫌 github 上的 commit 太慢了?现在,我向您提供一个文章模版,按照下面的步骤做,你就可以有一个个人博客了!
准备
- 注册一个 github 账号。
- fork 我的仓库。
开始
数据库
-
访问 Supabase 数据库。这是动态文章的原理,它把文章存在数据库。选择 Continue with GitHub,使用 GitHub 登录
-
创建组织,输入好名字后,点击 Create organization。在弹出的页面里创建项目。接着,会跳转到
https://supabase.com/dashboard/project/项目ip -
左侧侧边栏点击 Authentication。在第二级侧边栏选择 Sign In / Providers,把 User Signups 里的所有选项关掉,保存。然后在第二级侧边栏选择 Users,创建用户,一定要记住你的密码,因为只有这个密码能发布、删除、创建文章。最后,复制一下用户 id
-
在左侧侧边栏点击 SQL Editor,输入下面代码:
-- 创建article表
CREATE TABLE article (
id VARCHAR(8) PRIMARY KEY,
title TEXT NOT NULL,
created_at TIMESTAMPTZ DEFAULT NOW(),
updated_at TIMESTAMPTZ DEFAULT NOW(),
md TEXT,
tag TEXT
);
-- 启用行级安全性
ALTER TABLE article ENABLE ROW LEVEL SECURITY;
-- 创建策略:允许匿名用户查询
CREATE POLICY "anon_can_select" ON article
FOR SELECT USING (true);
-- 创建策略:允许指定用户插入
CREATE POLICY "user_can_insert" ON article
FOR INSERT WITH CHECK (auth.uid() = '用户id');
-- 创建策略:允许指定用户更新
CREATE POLICY "user_can_update" ON article
FOR UPDATE USING (auth.uid() = '用户id');
-- 创建策略:允许指定用户删除
CREATE POLICY "user_can_delete" ON article
FOR DELETE USING (auth.uid() = '用户id');
运行以后,数据库就配置好了。
仓库
返回你 fork 好的仓库,编辑
index.html和404.html。-
找到第 和 的两个变量。
-
第一个变量的前面,设置为你的项目 ip;
-
第二个变量设置为
https://supabase.com/dashboard/project/项目ip/settings/api-keys/legacy的anon public。 -
去到 github 设置,设置一下 pages。然后,你就可以在
你的用户名.github.io/article看到你的文章啦!
注意事项
- 不要泄露自己的 Supabace 数据库里的任何本文没有提到的秘钥!
- 不要用常用密码,因为密码泄露的后果很严重!
- 可以自定义风格,但是 script 标签的内容不能动,不然可能导致功能不全。
- 404.html 也要更新;一定要放在单独仓库,不然会有页面显示问题。
- 给我点 star!
效果预览



update 2026.2.10 修改了部分笔误
相关推荐
评论
共 20 条评论,欢迎与作者交流。
正在加载评论...