好吧......對Ruby來說這麼新,但是到目前爲止還是很喜歡它。我的問題是我無法獲取數據進入CSV文件。現在把json數據轉換成CSV文件
#!/usr/bin/env ruby
require 'date'
require_relative 'amf'
require 'json'
require 'csv'
amf = Amf.new
#This makes it go out 3 days
apps = amf.post('Appointments.getBetweenDates',
{ 'startDate' => Date.today, 'endDate' => Date.today + 4 }
)
apps.each do |app|
cor_md_params = { 'appId' => app['appID'], 'relId' => 7 }
cor_md = amf.post('Clinicians.getByAppIdAndRelId', cor_md_params).first
#this is where it breaks ----->
CSV.open("ile.csv", "wb") do |csv|
csv << ["column1", "column2", "etc.", "etc.."]
csv << ([
# if added puts ([ I can display the info and then make a csv...
app['patFirstName'],
app['patMiddleName'],
app['patLastName'],
app['patBirthdate'],
app['patHin'],
app['patPhone'],
app['patCellPhone'],
app['patBusinessPhone'],
app['appTime'],
app['appID'],
app['patPostalCode'],
app['patProvince'],
app['locName'],
# note that this is not exactly accurate for follow-ups,
# where you have to replace the "1" with the actual value
# in weeks, days, months, etc
#app[ 'bookName' ], => not sure this is needed
cor_md['id'],
cor_md['providerCode'],
cor_md['firstName'],
cor_md['lastName']
].join(', '))
end
end
,如果我刪除的嘗試,使ile.cvs文件,只是一個放輸出它,所有的數據顯示。但我不想進入終端並創建一個csv文件...我寧願運行.rb程序並創建它。另外,希望我正在製作正確的列...
想到我可以在輸出之上添加另一個輸入。 或者,更好的是,在我輸出之前插入一行到陣列中......
真的不知道這裏和標準的最佳做法是什麼。
這就是我所做的和嘗試的。我怎樣才能得到它乾淨地輸出到一個CSV文件,因爲我的企圖不工作
此外,爲了澄清它在哪裏打破,它確實添加列名稱而不是解析的JSON信息。我也可以完全按照錯誤的方式或者不可能的方式來做這件事。我只是不知道。
啊!這工作,但現在的問題是,我只得到1行數據,所以看起來像我需要更多的工作來做所有的數據輸出...可能的循環..不知道... – 2014-09-29 16:31:57