在applications.rb中我添加了这个:
SOME_CONFIG = = YAML.load_file(File.expand_path('../some_config.yml', __FILE__))
我把文件放在:
/some/folder/myapp/config/some_config.yml
然后当我运行'rails server'时出现错误:
.. in 'initialize' : no such file or directory /some/folder/myapp/config/some_config.yml (Errno::ENDENT) .... 'open' .... 'load_file' ....
这是权限问题吗?
答案 0 :(得分:1)
我不认为这是一个权限问题。
1)仔细检查拼写,确保没有拼写错误
2)尝试阅读另一个文件,看看它是否有效
3)尝试:YAML.load_file(File.join(Rails.root, 'config', 'some_config.yml'))
(您的错误消息显示问题不在于扩展文件名,但您永远不知道。)
4)你可以从控制台访问它吗?
答案 1 :(得分:0)
my_data = HashWithIndifferentAccess.new( YAML.load(File.read(File.expand_path('../../some_file.yml', __FILE__))) )
现在由于HashWithIndifferentAccess ,您可以使用以下任何给定的语法获取数据
my_data[:some_key] or my_data['some_key']