很久没有玩过 Rails 了,所以请浏览一下Learn Ruby on Rails教程,这非常棒。
我在使用 google 身份验证时遇到问题,示例代码从下面的 app/models/contact.rb 模型 update_spreadsheet 方法调用 config/secrets.yml 变量(从 shell 中的 ENV 读取)
def update_spreadsheet
connection = GoogleDrive.login(Rails.application.secrets.gmail_username, Rails.application.secrets.gmail_password)
我通过 ~/.bash_profile 设置了 ENV 变量,并确认使用以下代码可以使事情正常工作,但这不是示例代码,所以我只是在破解。
def update_spreadsheet
connection = GoogleDrive.login(ENV["GMAIL_USERNAME"], ENV["GMAIL_PASSWORD"])
我可以让它工作,但是,我想按照教程学习并知道如何更好地排除故障。如果有人有指针,将不胜感激。
在我的 config/secrets.yml 文件中看起来像:
development:
gmail_username: <%= ENV["GMAIL_USERNAME"] %>
gmail_password: <%= ENV["GMAIL_PASSWORD"] %>
谢谢