Ruby on Rails:保存google驱动器中的文件

时间:2016-12-11 07:47:21

标签: ruby-on-rails ruby google-drive-api paperclip

我有一个Ruby on Rail项目,但我需要在另一个文件夹中保存文件,实际上它保存在项目默认文件夹中,源是&#34; app / public / system /.." < / p>

我尝试保存google drive文件夹中的文件并使用:(这是我的宝石文件简历)

gem 'paperclip', '~>  5.1.0'
gem 'paperclip-googledrive-new'
gem 'google-api-client', '0.7.1', require: 'google/api_client'

我按照以下说明保存文件: https://github.com/shoaibmalik786/paperclip-googledrive-new

我的模特是这样的:

has_attached_file :banner, 
        :storage => :google_drive,
        :google_drive_credentials => "#{Rails.root}/config/google_drive.yml",
        :google_drive_options => {
            :public_folder_id => "0BxckPDmdZqdpYWgzbnVwUEhPVVU",
            :default_image => "missing.png", 
            :path => proc { |style| "#{style}_#{id}_#{banner.original_filename}"
        }
    }

我做了rake google_drive:authorize并且没有错误,在我的google_drive.yml中我得到了结果..是这样的:

client_id: <%= ENV["154813271628..."] %>
client_secret: <%= ENV["mOfV5821kUY..."] %>
access_token: <%= ENV["ya29.GlutA7bKMLwkHs6rXFYU92vZG..."] %>
refresh_token: <%= ENV["1/rAuECXRz..."] %>

我也使用过&#34; active_admin&#34;在我的应用程序中的实际错误是:

enter image description here

Thx获取任何帮助或更多信息

1 个答案:

答案 0 :(得分:2)

您的ENV配置无效:

client_id: <%= ENV["154813271628..."] %>
client_secret: <%= ENV["mOfV5821kUY..."] %>
access_token: <%= ENV["ya29.GlutA7bKMLwkHs6rXFYU92vZG..."] %>
refresh_token: <%= ENV["1/rAuECXRz..."] %>

Should be

client_id: <%= ENV["CLIENT_ID"] %>
client_secret: <%= ENV["CLIENT_SECRET"] %>
access_token: <%= ENV["ACCESS_TOKEN"] %>
refresh_token: <%= ENV["REFRESH_TOKEN"] %>