2013-03-18 21 views
1

我非常新的中間人和Ruby等我道歉提前...中間人JSON本地數據

我試圖通過「中間人本地數據」在我的數據文件夾讀一些JSON文件,我有再將結果保存到環境變量中,這樣我最終可以將它傳遞給我的JS文件。事情是這樣的:

- data.test.each do |t| 
    - set :json_data, t 

這實際上是讀我的/data/test.json文件並將其保存到json_data變量。但是,它不是JSON格式。這只是我所有節點的字符串連接。 我的猜測是我需要解碼JSON信息,然後將其保存到變量中。就像是?

- data.test.each do |t| 
    - set :json_data, ActiveSupport::JSON.decode(t) 

但是這也不起作用。 我試圖安裝JSON寶石,但它確實工作。

我可能缺少的任何線索?

回答

2

ActiveSupport是一個Rails模塊,你不能和Middleman一起獲得。假設你已經安裝了JSON的寶石,你可以做這樣的事情:

string = File.read('/path/to/json/file.json') 

json = JSON.parse(string) 

json.each do |node| 
    # do your stuff here 

這裏更多:Parsing a JSON string in Ruby

+0

哇...我剛纔看到這一點。 我真的結束了做一些非常類似的事情! 對不起,謝謝(猜猜比晚上好得多) – 2013-07-17 23:00:39

+1

沒問題!你介意將答案標記爲已接受嗎? :) – Billy 2013-07-18 18:06:03

相關問題