logo

鱼肚的博客

Don't Repeat Yourself

博客专栏的设计

之前的一篇文章中有讲过,我的博客的编辑和导入是基于Gist的。

形式是每当有Gist更新或新建的时候,在其中寻找文件名符合 *.blog.md 的文件,如果有的话,认为其是博客文章,并自动同步到数据库。

现在要在博客中建一些专栏,为了方便维护,Gist存储的方式和数据库中存储的方式也要做一些调整。

以前的格式

以前每篇Gist中会带一个文件,文件名为 *blog.md。

每个 blog.md 文件中,会用Markdown 注释的方式,写入一些分类、标签等信息。

gists preview

新的格式

要做专栏的话,文章的关联性就很重要了。如果随意地存储,仅通过文章的标题或分类进行管理,则在展现的时候较难处理,且编辑的时候较难维护。

我的想法是既然Gist支持多个文件,那么专栏的文章就可以写在同一个Gist之中,方便维护。

形式如下:

  1. Gist中第一个文件,以 *.series.md 方式命名,在其中写入一些注释信息,标注此Series的一些信息(名称、描述等)。
  2. Gist中其它的文件,还以 *.blog.md 方式命名,形式和以前相同。

后台数据存储

后台数据需要做如下两方面的改动:

  1. 添加Series表
  2. Posts表中添加SeriesId字段

数据同步方式

在文章的同步方式上,也需要做一些修改。

之前的同步方式会假设一个Gist中只有一个文章,现在要能正常处理一个Gist中多篇文章的情况。