Ошибка с open-uri на Heroku - PullRequest
       25

Ошибка с open-uri на Heroku

3 голосов
/ 17 сентября 2011

Я использую код ниже, чтобы открыть и загрузить изображение профиля Facebook на S3 с помощью Paperclip.Код отлично работает на моем локальном хосте (Rails 3.1, ruby ​​1.9.2 p290), но не работает на heroku (bamboo-mri-1.9.2)

facebook_image_url = access_token['user_info']['image'].gsub("square", "large")
url = URI.parse(facebook_image_url)

#Follow the redirect of Facebook profile picture url
res = Net::HTTP.start(url.host, url.port) { |http|
  http.get(facebook_image_url)
}

signed_in_resource.avatar = open(res['location'])
signed_in_resource.save
signed_in_resource

У кого-нибудь есть предложения?

1 Ответ

0 голосов
/ 17 октября 2011

У меня были похожие проблемы, которые были решены с помощью обновленной версии URLTempfile. Также используется S3 в качестве хранилища изображений.

https://github.com/chris/paperclip_url_support, положить в папку lib вашей установки.

product = Product.first(:conditions => {:_id => self.product_id})
raise "Unable to get product with id #{self.product_id}" unless product
product.picture = URLTempfile.new(self.image_url)
product.save!

Используя это в производстве на героку с тем же конфигом, что и у вас. (Heroku 1.9.3, Rails 3.1).

Надеюсь, это поможет вам.

...