2011-08-11 23 views
4

在应用程序中,我使用Fabric.js,让用户可以输入文字,画SVG的,插入图片等
我想知道,什么是最好的方式存储这些数据。如何保存文本,SVG,HTML,CSS一起有效

的要求是:

  1. 能够查询到的数据(文本),它告诉我,我应该在DB其存储(MySQL作为目前)

  2. 我有图片,我我也瞄准IPad,所以图像很重要,至于它们是如何存储的。

  3. SVG的和HTML/CSS进行以及保存。

  4. 我也希望做内容的版本,因为Quora的这样做,使用户可以看到从过去的版本升级到当前版本的变化。这还包括图像和SVG的版本。

我想知道谷歌文档是怎么做的,因为他们还可以存储我们的文件,图纸等

什么是这样做的最佳方式?

+0

请考虑upvoting的答案(S)/评论为什么他们不为你工作/让你的问题更具体的/回答自己题。 –

回答

1

我管理用户生成报告的Web应用程序发现将图像和二进制文件存储在文件系统中并将其从数据库链接到它们会更有效。使用xml或text的元素保存在数据库中以方便搜索 - 在您的情况下,这将包含css/html和svg(这是xml)。使用数据库来管理修订。

还可以检查出storing images in a database这个线程。

看起来Frabic.js使用在后端JavaScript的Web服务器Node.js的 - 之前没有使用过这一点,但你可能会调查该数据库是最容易与节点使用。JS:

1

如果要有效地查询文本,那么也许把所有的信息比特到DB分别是最有效的。也许你会玩OOXMLODF,它可以用作你需要的所有信息的容器,然后用XML存储(例如eXist)来存储它并查询(例如文本)。由于这些标准是基于XML的,因此您可以将它们转换为HTML(例如herehere),但为此编写一个在线编辑器是像Google这样的怪物可以做的事情。

2

是否有帮助,但我不知道,Opera浏览器提供了一个选项,将网页保存到一个唯一的文件{ MHT扩展},这在存储为以后使用{文件打开时}编码的文本的base64所有文件{CSS,图片,脚本等} ...也许这可以是存储数据的方法:P

+1

对于那些看看如何以编程方式做到这一点,看看[这里](http://stackoverflow.com/questions/729793/convert-html-wsdl-xsd-doc-to-mht-in-a-msbuild-步骤/ 729833#729833)和[这里](http://stackoverflow.com/questions/3230305/how-to-read-or-parse-mhtml-mht-files-in-java/3239442#3239442)。 –

+0

不错的来源,thansk! – AgelessEssence