[英]Figaro syntax error, unexpected tSYMBEG, expecting '}' (SyntaxError)
更新9月3日,它也不起作用.....
CarrierWave.configure do |config|
config.fog_credentials = {
:provider => 'AWS' # required
:aws_access_key_id => ENV["AWS_ACCESS_KEY_ID"] # required
:aws_secret_access_key => ENV["AWS_SECRET_ACCESS_KEY"] # required
}
config.fog_directory = ENV["AWS_S3_BUCKET"] # required
end
我正在使用Figaro gem來存儲我的AWS憑證的env變量。
這是我的initializers / carrierwave.rb文件
CarrierWave.configure do |config|
config.fog_credentials = {
:provider => 'AWS' # required
:aws_access_key_id => ENV[AWS_ACCESS_KEY_ID] # required
:aws_secret_access_key => ENV[AWS_SECRET_ACCESS_KEY] # required
#:region => 'us-east-1', # optional, defaults to 'us-east-1'
#:host => 's3.example.com', # optional, defaults to nil
#:endpoint => 'https://s3.example.com:8080' # optional, defaults to nil
}
config.fog_directory = ENV[AWS_S3_BUCKET] # required
end
當我做rails的時候,我得到這個錯誤
/initializers/carrierwave.rb:6: syntax error, unexpected tSYMBEG, expecting '}' (SyntaxError)
:aws_access_key_id => ENV...
^
/Users/judyngai/tryagain_newproject/onemonth/lintong/config/initializers/carrierwave.rb:7: syntax error, unexpected =>, expecting keyword_end
:aws_secret_access_key => ENV[AWS_SECRET_ACCESS_KEY] ...
這是我的figaro寶石生成的application.yml
AWS_ACCESS_KEY_ID: "blahblahblahblah"
AWS_SECRET_ACCESS_KEY: "blahblahblahblah"
AWS_S3_BUCKET: "blahblahblahblah"
我究竟做錯了什么?
您需要在鍵名周圍加上引號,並需要用逗號分隔每個項目(就像任何Ruby哈希一樣):
CarrierWave.configure do |config|
config.fog_credentials = {
:provider => 'AWS',
:aws_access_key_id => ENV["AWS_ACCESS_KEY_ID"],
:aws_secret_access_key => ENV["AWS_SECRET_ACCESS_KEY"]
}
config.fog_directory = ENV["AWS_S3_BUCKET"] # required
end
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.