簡體   English   中英

如何在Spree-2-2-stable上使用Amazon S3

[英]How to use Amazon S3 on Spree-2-2-stable

我需要在Amazon S3上配置映像,但是當我嘗試在Spree的 2-2-stable版本下進行配置時,我意識到此配置已從管理面板移開。

我在某處讀到該配置正在產生一些問題,因此在2-2上將其刪除。 但我認為該功能仍會以某種方式起作用。

當我嘗試將這些配置添加到config / initialize / spree.rb時 ,出現錯誤,因為這些首選項已不存在。

preference :s3_access_key, :string
preference :s3_bucket, :string
preference :s3_secret, :string

這些首選項在2-1-stable上找到,但在2-2-stable上找不到

https://github.com/spree/spree/blob/2-1-stable/core/app/models/spree/app_configuration.rb https://github.com/spree/spree/blob/2-2-stable /core/app/models/spree/app_configuration.rb

有什么辦法可以使其與Heroku一起使用?

這是Spree所做的更改,以及有關如何進行配置更改的說明。 https://github.com/spree/spree/commit/b1d6c5e4b9801d888cc76c05116b814945122207

我的理解是,您仍然可以使用回形針來管理到S3的上傳,我已經按照他們的指示成功完成了此操作。 但是,我在獲取S3上的保存路徑以正確配置時遇到了問題。 這可能會讓您入門...在環境配置文件中放入以下內容:

  # Paperclip configs
    config.paperclip_defaults = {
      :storage => :s3,
      :bucket => ENV['S3_BUCKET_NAME'],
      :s3_credentials => {
          :access_key_id => ENV['AWS_ACCESS_KEY_ID'],
          :secret_access_key => ENV['AWS_SECRET_ACCESS_KEY']
      }
  }

我將環境變量用於S3憑證,因此您的憑證很可能會有所不同。 這段代碼使上傳文件到S3成為可能,就像我說過的那樣,我不能強制特定的文件路徑。 希望能有所幫助。

編輯-其他信息:

我將以下內容添加到spree.rb初始化程序中,以定義自定義上傳路徑和自定義url路徑。

# S3 upload path and url path configuration
Spree::Image.attachment_definitions[:attachment][:path] = 'products/:id/:style/:basename.:extension'
Spree::Image.attachment_definitions[:attachment][:url] = 'products/:id/:style/:basename.:extension'

要更改默認的上傳大小,您可以覆蓋Spree圖像裝飾器模型。 因此,在app / models下添加一個spree目錄並添加一個名為image_decorator.rb的文件。 然后,您可以使用以下命令控制尺寸:

Spree::Image.class_eval do
  attachment_definitions[:attachment][:styles] = {
    :mini => '48x48>', # thumbs under image
    :small => '350x700>', # images on category view
    :product => '1024x768>', # full product image
    :large => '600x600>' # light box image
  }
end

請查看此頁面以了解詳細信息-> http://guides.spreecommerce.com/developer/logic.html

綜上所述,您可以通過更新環境初始化程序,Spree初始化程序並覆蓋spree image_decorator模型來完成所有常規的image / S3配置。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM