2012-08-24 38 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上传之前与一个“临时”文件一起工作:) –