如何处理数据库中的降价存储用户内容?

问题描述

| 我当时正在考虑允许用户使用markdown编辑网站内容,因为它很简单。现在的问题是如何存储该输入-我应该在保存时将其转换为html,然后将原始HTML存储在数据库中,还是保存降价文本并在每次请求时将其重新解析为HTML?在这里应该采用其他方法(写静态文件等)吗?我只是想知道如何解决这个问题,以及像stackoverflow这样的网站如何做到这一点。谢谢。     

解决方法

        我可能会同时存储内容的原始Markdown和HTML版本。实际上,我做过类似的事情(用最小的HTML代替了Markdown),在其中存储了原始版本和格式化版本。 如果您想在内容创建后对其进行编辑,那么您将需要原始的Markdown,因为它可能比Markdown-to-HTML转换器中的丑陋Markdown易于使用。保持Markdown不变,将来也可以更轻松地跟踪修订历史记录或调整HTML格式。 显示内容可能比创建或编辑内容更为普遍。因此,您可能希望方便使用HTML,以避免一遍又一遍地进行相同的Markdown到HTML的转换。 如果您只有降价促销,那么您需要为每次展示支付额外费用。如果只有HTML,那么您将得到丑陋且无法阅读/无法编辑的Markdown。如果两者兼而有之,则只需付出少量的磁盘空间,但是就可以轻松地以不同的内部结构重新生成HTML,轻松地进行修订历史记录跟踪,轻松地进行编辑,并且可以得到便宜的显示效果,这是一个令人满意的副作用。此外,同时存储这两者可以轻松存储批量列表的摘要(例如SO上的“ 0”列表),并且这些列表将很便宜,因为您将数据从存储区直接转储到页面的处理最少。     

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...