【发布时间】:2014-01-03 16:08:52
【问题描述】:
我正在使用 rails 并在 heroku 上部署我的应用程序。
我已经建立了一个翻译系统,在这个系统中我需要写在 yaml 文件中
我是这样进行的:
File.open(ENV['PATH_TO_FILE'], 'w') do |f|
f.write hash.to_yaml
end
在本地主机中,当我这样做时,它在 Rails 控制台中完美运行
YAML::load_file(ENV['PATH_TO_FILE'])
我可以看到已添加的新键。
但是,在 Heroku 上部署后,并在 heroku 的 rails 控制台中运行相同的代码后,没有添加任何键。
有没有人能解决这个问题?
提前致谢,
【问题讨论】:
-
两项: 1.您尝试写入哪个文件是,您在Heroku 上是否拥有该位置的写入权限?是否有任何诊断可用于检查那个?也许只是在 Heroku 中打开一个外壳,看看你是否可以
touch文件? 2. 应该创建文件的代码是否在与控制台相同的测功机中运行?因为此链接暗示如果不是则存在问题:devcenter.heroku.com/articles/dynos#ephemeral-filesystem -
首先感谢您的回答!我正在尝试在 config/locales/en.yml 中写入,如何检查我是否对 heroku 具有这些权限?我可以在控制台中加载文件,所以我似乎拥有它们!我认为该文件是临时写入的,没有保存,但我不知道如何解决这个问题:(
标签: ruby-on-rails ruby-on-rails-3 heroku