OSX Mavericks、ruby 2.1.1p76 (2014-02-24 リビジョン 45161) [x86_64-darwin13.0]、rvm 1.25.23 (マスター)、および rails-4.1.0 (疑惑) を実行
Railsapps.orgの本でレールの学習に取り組んでいますが、「スプレッドシート接続」で行き詰っています。私は本に書かれているとおりのコードを持っており、Google ドライブ用のアプリケーション固有のパスワードを設定してテストしました。私のコードは次のようになります。
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 設定がどこでどのようにポイントされるかを理解することができません。
どんな助けでも大歓迎です。
よろしく、ジェフ