Как сохранить файлы PDF с креветками в Amazon S3

У меня проблема с путем. В моей модели у меня следующие настройки:

class Pdffiles < ActiveRecord::Base
  belongs_to :user

  has_attached_file :invoice_file,
                    :path => ":rails_root/public/pdffiles/:user_id/:style/:basename.:extension",
                    :url => "/pdffiles/:user_id/:style/:basename.:extension",

                    :storage => :s3,
                        :bucket => '...',
                        :s3_credentials => {
                          :access_key_id => '...',
                          :secret_access_key => '...'
                        }  
end

и в контроллере выглядит мое действие так:

   pdf = Prawn::Document.new
    pdf.move_down 70

    pdf.text("Prawn Rocks")
    pdf.render_file('prawn.pdf')
    pdf_file = File.open('prawn.pdf')

    pdff = Pdffile.new()
    pdff.pdffile_file = pdf_file
    pdff.user_id = todays_user.id
    pdff.save

И моя проблема в том, что этот PDF-файл хранится на сервере S3, но в плохом месте. Вместо этого каталог app / public / pdff / id_of_a_user / file_name_of_pdf_file - это файл, сохраненный в

Users / my_name / my_ruby_root_directory / name_of_my_project / public / pdffiles / id_of_a_user / file_name_of_pdf_file .

Я не совсем уверен, что для сохранения файлов PDF я использую prawn верно, но я думаю, что проблема может быть в контроллере, где я установил место, где должен быть сохранен созданный файл ...

Я хотел бы спросить вас, что я должен изменить для сохранения файлов PDF в правильный каталог в S3 ... Вся помощь будет принята с благодарностью!

Мэнни, спасибо, сен

5
задан user984621 11 December 2011 в 02:44
поделиться