Używam:Rails 3 - Amazon S3 Spinacz UE Problem
Paperclip 2.3.16
Rails 3.0.9
Ruby 1.9.2
AWS - S3 0.6.2
Próbuję użyć spinacza przesyłanie do UE (Irlandia) wiadra oparte. Mam następujący w moim modelu:
has_attached_file :image, :styles => { :grid => '90x128#', :list => '140x200#', :original => '400x548'},
:storage => :s3,
:s3_credentials => "#{RAILS_ROOT}/config/s3.yml",
:url => 'flyers/:id/:style/:basename.:extension',
:path => 'flyers/:id/:style/:basename.:extension',
:bucket => 'fsight'
W moim environment.rb mam ustawić zapis korzystania z AWS/s3 domyślnego hosta do odpowiedniej UE za pomocą jednego:
require "aws/s3"
AWS::S3::DEFAULT_HOST.replace "s3-eu-west-1.amazonaws.com"
to działa dobrze, i pozwala mi przesłać obrazy, a ja mogę zweryfikować załadowanie/usunięcie obrazu przy użyciu konsoli zarządzania AWS.
Mam jednak problem podczas próby wyświetlenia obrazów w mojej witrynie. Obrazy nie ładują się i zidentyfikowałem przyczynę, ponieważ wygenerowany adres URL używa starego domyślnego hosta. Np:
Co powinno być: https://s3-eu-west-1.amazonaws.com/fsight/flyers/50/full/4759543368588654950.jpg
Co to właściwie jest:http://s3.amazonaws.com/fsight/flyers/50/full/4759543368588654950.jpg?1314801178
Jak widać, to używa starej domyślnego hosta.
Próbowałem zamieszczenia:
Paperclip.interpolates(:s3_eu_url) do |att, style|
"#{att.s3_protocol}://s3-eu-west-1.amazonaws.com/#{att.bucket_name}/#{att.path(style)}"
end
Ale potem zaczął otrzymywać następujący błąd:
wrong number of arguments (0 for 1)
Extracted source (around line #9):
<img src= <%= @event.image.url(:original) %>
wiem Spinacz ma pewne problemy z użyciem chwytaki UE, ale może ktoś mi w tym pomóc?
Wypróbowałem drugi, jak widać w pytaniu. Nie wiedziałem, że pierwszy nadal działa, spróbuję go teraz. Dzięki za wskaźnik :) Dam ci znać, jak to działa. – Ammar
Cześć, Jak już powiedziałem, spróbowałem drugiego, a teraz próbowałem pierwszego, oba bez skutku. Mogę przesłać dane do pracy, ale z jakiegoś powodu, adres URL wygenerowany w celu pobrania obrazu z kubełka S3 jest zawsze błędny, jak stwierdzono w pytaniu, jakiejkolwiek pomocy? – Ammar