运行 OSX Mavericks、ruby 2.1.1p76(2014-02-24 修订版 45161)[x86_64-darwin13.0]、rvm 1.25.23(主)和 rails-4.1.0(据称)
我正在阅读railsapps.org关于学习 rails的书,并且被困在“电子表格连接”中。我的代码与书中所述完全一致,并且我已经为 Google Drive 设置了一个应用程序专用密码并对其进行了测试。我的代码如下所示:
def update_spreadsheet
connection = GoogleDrive.login(Rails.application.secrets.email_provider_username, Rails.application.secrets.email_provider_password)
ss = connection.spreadsheet_by_title('Learn-Rails-Example')
if ss.nil?
ss = connection.create_spreadsheet('Learn-Rails-Example')
end
我的 secrets.yml 文件包含以下内容:
development:
email_provider_username: <%= ENV["GMAIL_USERNAME"] %>
email_provider_password: <%= ENV["GMAIL_PASSWORD"] %>
mailchimp_api_key: <%= ENV["MAILCHIMP_API_KEY"] %>
mailchimp_list_id: <%= ENV["MAILCHIMP_LIST_ID"] %>
我按照教程正确配置了我的 .bashrc 文件。
当我输入联系表格信息并按“提交”时,我收到以下错误:
GoogleDrive::AuthenticationError at /contacts
Authentication failed for : Response code 403 for post https://www.google.com/accounts/ClientLogin: Error=BadAuthentication
如果我上去硬编码登录名和应用程序专用密码,Rails.application.secrets.email_provider_username
它就Rails.application.secrets.email_provider_password
可以正常工作。作为一个新手,我无法按照代码来了解Rails.application.secrets.email_provider_username
指向我的 .bashrc 设置的位置或方式。
任何帮助是极大的赞赏。
问候,杰夫