我可以在ROR中使用文本文件作为我的数据库吗?

时间:2010-10-06 23:56:27

标签: ruby-on-rails database text-files

我想使用分隔的文本文件(xml / csv等)来替换Ruby on Rails中的数据库。溶液

(这是一个类项目要求,如果我有选择,我宁愿使用数据库。)

我很好地序列化数据并将其自己发送到文本文件。

3 个答案:

答案 0 :(得分:4)

最好的方法可能是采用ActiveModel API并构建以适当的方式解析文件的方法。

这是一个关于ActiveModel和ActiveRelation的好presentation,他建立了一个自定义模型,它应该有很多类似的概念(但后端不同。)还有一个关于ActiveModel的Yehuda好blog post API

答案 1 :(得分:2)

您是否考虑过使用SQLite?这是更好的解决方案。

  • 它使用单个文件。
  • 这比自己进行序列化更快。
  • 零配置。使用起来非常简单。
  • 您获得ACID合规性,交易子选择等等。

答案 2 :(得分:0)

MySQL可以在CSV中存储表格。它有一些非常严重的限制,但听起来你的要求仍然需要一些非常严重的限制。

我从未以这种方式设置Rails项目,我不知道它会采取什么措施,但似乎有可能。

HSQLDB似乎可以将数据存储在磁盘上,作为创建数据库的SQL脚本。它记录内存和日志文件的更改,当您关闭它时,它会再次重新创建一个SQL脚本。我自己没有用过这个。

HSQLDB似乎不是Rails中受支持的数据库之一。我不知道如何添加对新数据库的支持。