如何在数据库中存储轻量级格式(纺织品,Markdown)?

2022-08-30 21:06:25

我将在我正在从事的项目中实现一种轻量级的格式语言(可能是纺织品,也许是Markdown),我想知道如何最好地将其存储在数据库中。

如果用户能够编辑他们发布的内容,那么对我来说,存储原始的、未转换的标记是有意义的,这样用户下次就不必编辑 HTML。但是,由于内容的显示量远远超过编辑的内容,因此存储内容的转换副本也是有意义的,这样就不必在每个页面视图中通过纺织品发送原始内容。

那么,在数据库中并排存储原始内容和转换后内容的常见做法是什么?有没有更好的方法?

谢谢!


答案 1

商店降价:

  • 每次视图 = 转化
  • 每次编辑 = 无处理

存储网页

  • 每个视图 = 无处理
  • 每次编辑 = 转换为降价并返回

同时存储两者

  • 每个视图 = 无处理
  • 每次编辑 = 编辑后转换为 html

您必须权衡处理成本与存储成本。


答案 2

您应明确存储原始的 Textile/Markdown 标记,并使用标准的 HTTP 缓存内容(上次修改时间、过期时间、ETag)来缓存呈现的页面,或者只是缓存处理标记的结果。


推荐