2014-02-12 43 views
0

我想保存用戶上傳到斑點的CSV文件。我不願意以可以使用ruby CSV庫的格式從blob中檢索CSV文件。任何想法,我怎麼能做到這一點?將CSV保存爲一個斑點

+0

http://mattberther.com/2007/10/19/uploading-files-to-a-database-using-rails –

+0

你甚至想要將它們存儲在數據庫中嗎?爲什麼不存儲文件名並將「blob」寫入磁盤...壓縮。或者使用亞馬遜或天藍色來存儲數據。否則,你的數據庫很快就會被縮放(如果有很多文件被上傳),只是因爲你填充了沒有數據庫業務的數據,除非你想全文搜索它;) –

回答

0

你必須添加一個字段到數據類型:text你的模型(因爲這是一個CSV是什麼,而不是二進制)。比方說,你的模型被稱爲Record和領域被稱爲csv

record = Record.new 
record.csv = File.read 'path/to/csv' 
record.save 
#... later... 
CSV.parse record.csv # => here's your csv 

問題?

+0

我的主要問題是,這個工作是否可行對於大型CSV文件? (比如說100,000行)? –

+0

很可能是的,例如postgresql中的可變長度文本數據類型允許大約1GB。找出你正在使用的數據庫和谷歌周圍,看看它的限制是什麼。 – DiegoSalazar