2012-08-24 44 views
0

我有一個「規則列表」,「本地主機:3000 /規則」及其JSON呈現在「localhost:3000/rules.json」回報率 - 上傳JSON渲染

我想創造行動「發佈」上傳這個JSON到我的FTP,但我沒有找到解決方案,使用網絡:FTP。

這裏是我的代碼: rules_controller.rb

def publish 
    require 'net/ftp' 
    ftp = Net::FTP.new('xxxxxx', 'xxxxxxxx', 'xxxxxxx') 
    ftp.chdir('www/lol') 
    ftp.putbinaryfile('rules.json') 
    ftp.close 
end 

在此先感謝

回答

1

從來沒有做過這個,但看着[http://stdlib.rubyonrails.org/libdoc/net/ftp/rdoc/classes/Net/FTP.html]看來ftp.login部分缺失。那麼,如果你不需要進行身份驗證,那麼需要更多的洞察力來給出任何建議。你能發佈你正面臨的問題嗎?


編輯:

如果你可以在一個文件中的JSON數據(包含所有規則)(像你說的rules.json),這net/ftp應該工作。現在,如果您在將json內容保存到臨時文件時遇到問題,則可以使用此帖子 - 「File.open, write and save?」。但是如果您覺得問題完全在於net/ftp,那麼錯誤日誌或問題的更詳細描述將會有所幫助。

+0

感謝您的回答。登錄不是問題,似乎我們可以通過使用FTP.new('host','login','pw')來避免ftp.login 就像我說過的,我想用我所有的「規則「在我的FTP上。我試圖把它們放在一個變量上,但它當然不適用於「putbinaryfile」,所以我嘗試使用已經有JSON渲染的控制器規則的索引操作,但它也不起作用。 –

+0

是的,對不起,我錯過了'new'方法的'login'部分。但是,Ive更新了我的答案。讓我知道如果它可以幫助或不。 – Samiron

+0

非常感謝!它似乎在FTP上傳之前與一個「臨時」文件一起工作:) –