2012-07-06 37 views
2

我決定在Ruby中編寫一個小程序來處理我不起眼的財務跟蹤需求。它基本上是一個分類賬,一個跟蹤收入和支出以及進行各種數據彙總的程序。在命令行中我非常自在,這就是爲什麼我決定保留這些東西,而不是將它變成圖形應用程序。在Ruby命令行應用程序中處理數據存儲

所以,這裏有一個問題:我應該用什麼樣的後端來存儲數據?我已經考慮過sqlite,但我願意接受建議。如果我最終應該使用SQL數據庫,我應該考慮使用ORM嗎?

回答

5

SQLite可能會很好 - 如果您需要能夠回滾到以前的狀態,它很容易從命令行使用,易於備份和易於版本化。

有一個不錯的ORM稱爲續集,做非Rails的東西時,我真的很喜歡:http://sequel.rubyforge.org/

0

多少數據,你呢?他們經常改變嗎?

對於短的數據序列,我經常將HERE文檔與YAML結合起來。

一個例子:

require 'yaml' 

YAML.load(DATA).each{|account, data| 
    sum = 0 
    data.each{|x| sum += x } 
    puts "%s: %i" % [ account, sum ] 
} 


__END__ 
account1: 
- 1 
- 2 
- 3 
- 4 
account2: 
- 10 
- 20 
- 30 
- 40 

DATA是一個IO-對象和包含後END的內容。

這使您可以在腳本中進行數據更改,而不需要DB編輯器。

如果你想修改程序中的數據並存儲結果,我推薦 - 比如Benjamin - SQLITE和Sequel。

相關問題