将文件上传到Amazon S3

费利克斯

我想将文件从Rails应用程序直接上传到AmazonS3。现在的配置看起来像这样:

宝石文件

宝石“回形针”

宝石'aws-sdk'

在config / application.rb中

# Amazon S3 configuration for paperclip
config.paperclip_defaults = {
    :storage => :s3,
    :s3_host_name => 's3-eu-west-1.amazonaws.com'
}

型号-movie.rb

class Movie < ActiveRecord::Base

   # add File to Movie association on column mo
   has_attached_file :movie,
                :storage => :s3,
                :bucket => '--',
                :s3_credentials => {
                    :bucket => '---',
                    :access_key_id => '---',
                    :secret_access_key => '---'
                }

  # validdates the file type
  validates_attachment_content_type :movie, :content_type => /\Avideo\/.*\Z/

end

控制器Movies_controller.rb

class MoviesController < ActionController::Base

  layout "application"

  # Method to add a new Movie
  def addMovie

    if request.post?
      #@movie = Movie.new(movies_params)
      @movie = Movie.new(params[:movie])
      if @movie.save
        flash[:notice] = t("flash.moveuploadstarted")
        redirect_to :addMovie
      end
    else
      @movie = Movie.new
    end
  end


  private

   def movies_params
    params.require(:movie).permit(:movietitle, :movieprice, :locked,    :moviedescription, :currency, :language)
  end

end

数据库如下所示: 在此处输入图片说明

当我填写表格并发送电影时,浏览器将开始上传电影,该行为将显示在左下角。但是当达到100%时,电影不会存储到Amazon S3,并且DB是空的,但是没有错误等等。

可能是什么问题呢?

更新:

上传表单具有该视频的输入文件

    <div class="form-group">
      <label><%= f.label :movie %></label>
      <%= f.file_field :movie, :class => "form-control", :placeholder => :movie %>
    </div>
阿米纽斯

这是使用载波的代码,但对于paperpclip应该相同(顺便说一下,建议使用载波)

请注意,它应该在config初始化文件中

config/initializers/carrier_wave.rb

if Rails.env.production?
  CarrierWave.configure do |config|
    config.fog_credentials = {
      # Configuration for Amazon S3
      :provider              => 'AWS',
      :aws_access_key_id     => ENV['S3_ACCESS_KEY'],
      :aws_secret_access_key => ENV['S3_SECRET_KEY']
    }
    config.fog_directory     =  ENV['S3_BUCKET']
  end
end

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用Meteor将文件上传到Amazon S3?

来自分类Dev

如何使用C#将文件上传到Amazon S3 super easy

来自分类Dev

使用Transloadit将路径图像+文件上传到Amazon S3

来自分类Dev

使用签名的URL将文件从angularjs直接上传到Amazon s3

来自分类Dev

将大型高清视频文件上传到Amazon Web Services S3

来自分类Dev

将文件从iOS上传到Amazon S3

来自分类Dev

Amazon S3 AWS将图像上传到文件夹

来自分类Dev

将5G文件上传到Amazon S3时出现EntityTooLarge错误

来自分类Dev

直接使用php将文件上传到Amazon s3

来自分类Dev

使用NodeJS将文件上传到Amazon S3

来自分类Dev

将大文件夹上传到Amazon S3

来自分类Dev

将文件上传到Amazon S3存储桶时出错

来自分类Dev

使用Ruby SDK将文件上传到Amazon S3

来自分类Dev

如何使用iOS将文件上传到Amazon S3并获取响应的URL

来自分类Dev

使用Dropzone.js问题将文件上传到Amazon S3

来自分类Dev

将分块文件直接上传到Amazon s3

来自分类Dev

将文件上传到Amazon S3

来自分类Dev

使用非默认权限将文件上传到Amazon S3

来自分类Dev

使用plupload将多个文件上传到Amazon S3

来自分类Dev

将文件从iOS上传到Amazon S3

来自分类Dev

将大文件夹上传到Amazon S3

来自分类Dev

使用boto将csv文件上传到Amazon S3存储桶

来自分类Dev

使用NodeJS和S3FS / multiparty将文件上传到Amazon S3

来自分类Dev

将Blob文件上传到Amazon s3

来自分类Dev

pythonw.exe无法将文件上传到Amazon S3

来自分类Dev

如何使用表单数据直接将多个文件上传到Amazon S3?

来自分类Dev

尝试直接将文件上传到Amazon S3存储桶时请求失败

来自分类Dev

Rails通过载波和雾将文件上传到Amazon S3

来自分类Dev

将本地文件上传到amazon aws s3时如何获取本地文件?

Related 相关文章

热门标签

归档